Pandas之Series、DataFrame、MultiIndex

Pandas之Series、DataFrame、MultiIndex,第1张

Pandas之Series、DataFrame、MultiIndex 1. Series
  • Series是一个类似于一维数组的数据结构,它能够保存任何类型的数据
  • 主要由一组数据和与之相关的索引两部分构成。
1.1 Series的创建
  • pd.Series(data=Node,index=None,dtype=None)
    • data:传入的数据,可以是ndarray,list等
    • index:传入的索引,要与数据长度相等
    • dtype:数据的类型
1.2 Series对象的属性
  • index
  • values
1.3 Series对象的方法
  • series.sort_values(ascending=True)
  • series.add(数字)
    • 需要series里面存的values是数字类型
  • series.sub(数字)
    • 同上
  • 逻辑运算
    • values中的每个元素进行逻辑运算
  • series.isin(values)
    • values:一个集合序列
    • 也是一种逻辑运算
  • series.apply(func)
    • func:自定义函数
  • series.value_counts()
    • 统计series中元素出现的次数
1.3 可以利用Series对象的索引获取数据
series[2]
2. Dataframe 2.1 Dataframe的创建
  • pd.Dataframe(data=None,index=None,columns=None)
    • index:行索引
    • columns:列索引
2.2 Dataframe的属性
  • shape
  • index
  • columns
  • values
  • T :转置
2.3 Dataframe的实例方法
  • data.head(n=5)
  • data.tail(n=5)
  • data.reset_index(drop=False)
    • 重置索引
    • drop:是否丢弃原来的索引。
  • data.set_index(keys,drop=True)
    • keys:列索引名称(单级索引)或列索引名称组成的列表(多级索引)
    • drop:是否将指定作为索引的列删除
  • data.sort_values(by,ascending=True)
    • by:按单个列或多个列进行排序
    • 返回一个新视图
  • data.sort_index(ascending=True)
    • 按索引进行排序
    • 返回一个新视图
  • data.query(查询语句字符串)
    • 查询指定的行记录
    • data.query("open<24 & open > 23")
  • data.describe()
    • 统计运算:count,mean,std,min,max
    • 只针对数值类型进行统计
  • data.apply(func,axis=0)
    • func:自定义函数
    • axis=0:默认拿到每一列进行自定义运算
2.4Dataframe关于统计的实例函数
  • 普通统计函数:默认axis=0,即按列统计
函数名说明sumSum of valuesmeanMean of valuesmedianArithmetic median of valuesminMinimummaxMaximummodeModeabsAbsolute ValueprodProduct of valuesstdBessel-corrected sample standard deviationvarUnbiased varianceidxmaxcompute the index labels with the maximumidxmincompute the index labels with the minimum
  • 累计统计函数
函数作用cumsum计算前1/2/3/…/n个数的和cummax计算前1/2/3/…/n个数的最大值cummin计算前1/2/3/…/n个数的最小值cumprod计算前1/2/3/…/n个数的积

2.5 Dataframe的索引 *** 作
  • data['open']['2018-02-27']
    • 先列后行
    • 不支持切片
  • data.loc['2018-02-27':'2018-02-22','open']
    • 按索引查询
    • 先列后行
    • 支持切片
  • data.iloc[:3,:5]
    • 按索引的下标查询
    • 先列后行
    • 支持切片
  • data.ix[0:4,['open','close','high']]
    • 不推荐
2.6 修改某一列的值或新增某一列
  • data['close']=1
    • 有则修改
    • 无则新增
  • data.close=1
    • 只能修改某一列的值
2.7 数据查询
  • data[data['open']>23]
    • 返回一个Dataframe视图
  • data[(data["open"] > 23) & (data["open"] < 24)]
    • 多个逻辑判断
3. MultiIndex 3.1 multiIndex的创建
arrays = [[1, 1, 2, 2], ['red', 'blue', 'red', 'blue']]
pd.MultiIndex.from_arrays(arrays, names=('number', 'color'))

# 结果
MultiIndex(levels=[[1, 2], ['blue', 'red']],
           codes=[[0, 0, 1, 1], [1, 0, 1, 0]],
           names=['number', 'color'])
 3.2 multiIndex的属性
  • names:levels的名称
  • levels:每个level的元祖值

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5480501.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存