pandas入门
数据结构
Series
Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据即可产生最简单的Series:
可以通过索引的方式选取Series中的单个或一组值。
运算(根据布尔型数组进行过滤,标量乘法,应用数学函数)。
根据字典创建Series。
NaN(not a number)表示缺失或NA值。
isnull()和notnoll()用于检测缺失数据。
在算术运算中会自动对齐不同索引的数据。
Series对象本身机器索引都有一个name属性。
DataFrame
DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值,字符串,布尔型等)。
其中的参数有columns(指定列序列),index(指定参数)。
frame['xxx']和frame.xxx来获取一个Series。
索引字段ix。
列可以通过赋值的方式进行修改。
嵌套字典
也就是字典的字典
可以进行转置 .T
索引对象
pandas的索引对象负责管理轴标签和其他元数据(比如轴名称等)。构建Series或DataFrame时,所用到的任何数组或其他序列的标签都会被转换称一个Index:
基本功能
重新索引
pandas对象的一个重要方法是reindex(fill_value=),其作用是创建一个适应新索引的新对象。
mathod选项
丢弃指定轴上的项
drop(索引)方法
索引、选取和过滤
算术运算和数据对齐
对不同的索引对象进行算数运算。在将对象相加时,如果存在不同的索引对,则结果的索引就是该索引对的并集。
add(xxx,fill_values=0)
广播:我的理解是逐行进行运算处理。
如果要在列上广播,就要使用算术运算方法。
axis=0和1分别的表格的纵轴和横轴。
applymap()和map()
排序
对索引sort_index(ascending=False,by='')
对值order() 缺失np.nan
排名
rank() 参数:method="first"值在原数据中出现的顺序;ascending=False method="max"
带有重复值的轴索引
索引is_unique属性可以显示它的值是否是唯一的。
汇总和计算描述统计
相关系数和协方差
corr() 相关系数
cov() 协方差
corrwith()
唯一值、值计算以及成员资格
unique()
value_counts() 用于计算Series中各值出现的频率
isin()
处理缺失数据
滤除缺失数据
dropna() how='all' 只丢弃全为NaN的那些行,thresh 留下一部分观测数据
data[data.notnull()]
填充缺失数据
fillna()
层次化索引
能使你以低维度形式处理高维度数据。
stack()
unstack()
重排分级顺序
swaplevel()
sortlevel()
根据级别汇总统计
使用DataFrame的列
set_index([],drop=False)
reset_index([])
其他有关pandas的话题
整数索引
面板数据
panel