网站大量收购闲置独家精品文档,联系QQ:2885784924

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

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Python数据分析常用方法手册课案

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.如何获取导入的数据有几行几列? 直接用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[col35]] #条件筛选 #dataframe.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,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.使用(并)与| (或)实现多条件筛选 aqicsv[(aqicsv[FID]37898) (aqicsv[FID]38766) ] aqicsv[(aqicsv.predictaqi_norm1150) |(aqicsv.predictaqi_norm1100) ] #3.筛选后取另外两列数据 如果只需要其中两列数据,而同时利用另外两列进行筛选时可以这样.如果只需要其中的某几列可以写为aqicsv[[FID,x,y]] aqicsv[[x,y]][(aqicsv.FID 10000) | (aqicsv.predictaqi_norm1 150)] #4.isin()用法:筛选某一列数据符合等于规定值 (它使得我们可以定义一个列表,里面包含我们所希望查找的值); data7=data[data[股票代码].isin([sh600141,sh600754,sh603017,sh603198])] #同样,以上这个语句可以用query()函数来查询,需要安装numexpr; data8=data.query(股票代码 == [sh600141,sh600754,sh603017,sh603198]) #map()函数也有这个功能,样式如下: df[df[sku].map(lambda x: x.startswith(B1)) amp; (df[quantity] gt; 22)].head() #5.字符串方法:筛选某一列内容包含特定值 例如找出MA金叉死叉列所有含金叉的行,但列不能含空值 data8=data7[data7[MA金叉死叉].str.contains(金叉)] #6.如果列中存在空值,空值处理方法: #6.1 用fillna()方法将空值填充 data7=data.fillna(value=你好) #6.2 或者将列中的空值删除

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档