Pandas是数据分析必须要学的库!这是我见过最详细最牛逼的教程!
1.选取行名、列名、值 2.以标签(行、列的名字)为索引选择数据—— x.loc[行标签,列标签]进群:125240963 ? 即可获取数十套PDF哦! 3.以位置(第几行、第几列)为索引选择数据—— x.iloc[行位置,列位置] 4.同时根据标签和位置选择数据——x.ix[行,列] 5.选择连续的多行多列——切片 起点索引:终点索引 这种用法叫做一个切片,指从起点索引到终点索引。看实际用法就懂了。 如果起点索引省略代表从头开始,终点索引省略代表直到最后,都省略就代表全部了。 切片在.loc、.iloc、.ix三种方法中都可以应用 由上例可见,当以位置为索引时,切片是不包括终点的,是左闭右开的。即第1列到第3列不是写作0:2而是0:3。 6.选择不连续的某几行或某几列 备注:当以标签名选取不连续的某几行的时候在这个例子中如df.loc['2016-02-02','2016-02-04',:]这样写会出错,,是时间格式的原因,这样写就可以了df.ix[[pd.Timestamp('2016-02-02'),pd.Timestamp('2016-02-04')]] 7.简便地获取行或列 直接用切片获取行,直接用标签名获取列。注意不要错乱。 8.如何返回一个dataframe的单列或单行 如上,此时返回的是一个series,而不是dataframe。有时单独只获取一行的时候也会返回一个series,如df.ix[0,:]。 若要返回dataframe,可用中括号把索引括上,如下。 9.按条件选取数据——df[逻辑条件] 逻辑条件支持&(与)、|(或)、~(非)等逻辑运算 这个方法有个常用情景,即按条件修改数据: 02. dataframe转置、排序 1.转置 df.T 2.按行名或列名排序——df.sort_index df.sort_index(axis=0,ascending=True)
3.按值排序——df.sort_index df.sort(by=,ascending=True)
03. dataframe增删行或列 1.获得一个datframe数据类型的样例 2.增加一列或一行 3.删除行或列——df.drop df.drop(labels,axis=0,inplace=Flase)
04.链接多个dataframe 1.concat,concat([df1,df2,...],axis=0)
2.横向连接 3.纵向连接 05.组建dataframe 1.组建方法——pd.DataFrame pd.DataFrame(data=None,index=None,columns=None)
使用前要执行前面的import pandas as pd 2.用字典型数据组建——pd.DataFrame 方法基本同上,因为字典型自带一个标签,所以就不用写列名了。 3.简便地获得聚宽数据中的时间索引 有时建立一个dataframe时,为了和平台数据保持一致,需要使用相同的时间行索引,但时间数据操作复杂,而且涉及到节假日、非交易日等问题,直接建立比较困难,这里介绍一种简单的方法,快速获得跟平台数据一致的时间索引。原理就是直接把平台数据的时间索引拿出来。例子如下: 06.dataframe的缺失值处理 1.去掉缺失值——df.dropna df.dropna(axis=0,how='any',thresh=None,subset=None,inplace=False)
相对复杂,请看例子和与例子注释。 2.对缺失值进行填充——df.fillna df.fillna(value=None,axis=None)
3.判断数据是否为缺失——df.isnull 为什么要这样用这个方法判断是否为缺失? 因为nan不等于nan(如下例),即用类似x == nan条件为真 这样的判断方法无法判断一个值x是否为nan。 07.常用统计函数 常用统计函数
查看函数的详细信息 08.panel类型数据分解成dataframe 1.panel的取用方法 panel类型的的取用方法类似与dataframe,看下例子也就明白了。一般要做统计方面的工作,也是如下分解成dataframe进行操作,基本满足日常需求。了解更多panel的操作可参考:http://pandas.pydata.org/pandas-docs/stable/api.html#panel 2.panel类型数据分解成dataframe方法 09.研究内存取dataframe 1.把dataframe存成csv文件——df.to_csv() 用法如下,文件都是存到研究空间中的,如果不写路径是默认是存在根目录,如df.to_csv('df.csv') 2.读取被存成csv文件的dataframe——pd.read_csv() 文章来源于:JoinQuant聚宽 聚宽,国内最大Python量化平台,提供从数据、回测、模拟、实盘等全流程产品。聚宽已汇聚超过15w量化爱好者,与数十家机构合作,聚宽公众号会定期更新量化干货,教你用Python写出好策略。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |