Python数据分析常用方法手册.doc

Python数据分析常用方法手册.doc

ID:50812424

大小:48.00 KB

页数:12页

时间:2020-03-14

Python数据分析常用方法手册.doc_第1页
Python数据分析常用方法手册.doc_第2页
Python数据分析常用方法手册.doc_第3页
Python数据分析常用方法手册.doc_第4页
Python数据分析常用方法手册.doc_第5页
资源描述:

《Python数据分析常用方法手册.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1.Python数据处理和分析常用语句数据分析的一般步骤包括数据获取、数据整理、数据描述、数据分析1.1数据获取1.1.1数据获取方式1.1.2查看数据属性Data.shape查看数据多少行、多少列Data.columns查看数据列Data.dtypes查看各数据字段的属性1.2数据整理#第二步:做一些数据的基本处理:1.2.1数据基本处理(类excel)#0.数据类型的转换例如:如果要做时间序列分析,首先要将交易日期从通用对象(object)转换为日期对象(datetime)df['date']=pd.to_datetime(df['date'])#1.如何获取导入的数据有几行几列?

2、直接用df.shape,返回一个维度(几行,几列)的元组;df.columns.size#获取列数df.iloc[:,0].size#获取行数#2.如何查看指定行、列、子集?#df=pandas.read_excel('1.xls',sheetname='店铺分析日报')df=df.loc[:,['股票代码','股票名称','营业总收入']]#访问指定的列#df=df['股票代码']#查看指定列#DataFrame.ix['index_name']#查看指定行#dataframe[m:n]#选择多行#dataframe[dataframe['col3'>5]]#条件筛选#datafra

3、me.ix[0:3,0:5]#选择子集#3.如何添加新的列例1:添加一个总和栏来显示Jan、Feb和Mar三个月的销售总额df['total']=df['Jan']+df['Feb']+df['Mar']例2:把计算结果添加为一个新的列df['P/E']=df.收盘价/df.基本每股收益#新的列名,后面是对应的数值例3:在excel表最后加一行求各列和sum_row=df[['Jan','Feb','Mar','total']].sum()#4.如何删除行列#df_delete=df.drop(['result'],axis=1)#删除列#DataFrame.drop(['index1

4、','index2'...])#删除行#5.如何对数据进行排序?df['P/E'].size#获取‘P/E’这列共有多少行newdf=df_delete.sort('P/E')#默认升序排列sort_index也可以进行排序#6.如何对数据进行筛选?#1.筛选出predictaqi_norm1这一列大于100的行;aqicsv[aqicsv["predictaqi_norm1"]>100]也可以写为:data[data.收盘价>100]#2.使用&(并)与

5、(或)实现多条件筛选aqicsv[(aqicsv["FID"]>37898)&(aqicsv["FID"]<38766)]aqic

6、sv[(aqicsv.predictaqi_norm1>150)

7、(aqicsv.predictaqi_norm1<100)]#3.筛选后取另外两列数据如果只需要其中两列数据,而同时利用另外两列进行筛选时可以这样.如果只需要其中的某几列可以写为aqicsv[['FID','x','y']]aqicsv[['x','y']][(aqicsv.FID>10000)

8、(aqicsv.predictaqi_norm1>150)]#4.isin()用法:筛选某一列数据符合等于规定值(它使得我们可以定义一个列表,里面包含我们所希望查找的值);data7=data[data['股票代码'].isin

9、(['sh600141','sh600754','sh603017','sh603198'])]#同样,以上这个语句可以用query()函数来查询,需要安装numexpr;data8=data.query('股票代码==['sh600141','sh600754','sh603017','sh603198']')#map()函数也有这个功能,样式如下:df[df["sku"].map(lambdax:x.startswith('B1'))&(df["quantity"]>22)].head()#5.字符串方法:筛选某一列内容包含特定值例如找出MA金叉死叉列所有含金叉的行,

10、但列不能含空值data8=data7[data7['MA金叉死叉'].str.contains('金叉')]#6.如果列中存在空值,空值处理方法:#6.1用fillna()方法将空值填充data7=data.fillna(value='你好')#6.2或者将列中的空值删除;stock_data=stock_data[stock_data['市盈率TTM'].notnull()]#或6.2用dropna删除缺失值stock_data.dropna

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。