cfile read 最大读取限制_pandas读取表格后的常用数据处理操作

1f79f03833121789069658e8d6d87f32.png 作者丨Sp4rkW 来源丨 凹凸数据   大家好,我是Sp4rkW 93bf91a9a92dff734ebaf2b53d17902b.png 今天给大家讲讲pandas读取表格后的一些常用数据处理操作。 这篇文章其实来源于自己的数据挖掘课程作业,通过完成老师布置的作业,感觉对于使用python中的pandas模块读取表格数据进行操作有了更深层的认识,这里做一个整理总结。 本文总结了一些通过pandas读取表格并进行常用数据处理的操作,更详细的参数应该关注官方参数文档

1、读取10行数据

相关参数简介:
  • header:指定作为列名的行,默认0,即取第一行的值为列名,数据为列名行以下的数据;若数据不含列名,则设定 header = None。
  • sep:指定分隔符。如果不指定参数,则会尝试使用逗号分隔。
  • nrows:需要读取的行数(从文件头开始算起)
tabledata = pandas.read_excel("./hotel.xlsx", header=None, sep=',', nrows=10)
print(tabledata)

2、对读取的数据重新定义列名

相关参数简介:
  • names:用于结果的列名列表,如果数据文件中没有列标题行,就需要执行header=None
name_columns = [' ','名字','类型', '城市', '地区', '地点', '评分', '评分人数', '价格']
tabledata = pandas.read_excel("./hotel.xlsx", header=0, names=name_columns, sep=',', nrows=10)
print(tabledata)

3、取出某列值为指定值的所有数据

这里我们做一个简单的遍历操作即可完成,取值使用的函数是ix。
name_columns = [' ','名字','类型', '城市', '地区', '地点', '评分', '评分人数', '价格']
tabledata = pandas.read_excel("./hotel.xlsx", header=0, names=name_columns, sep=',')
hotel_name_list = []for i in range(421):if tabledata.ix[i,2] == "商务出行":
hotel_name_list.append(tabledata.ix[i,1])
print(hotel_name_list)

4、取出某一列的数值是缺失值的数据

这里开始出现缺失值,提一下缺失值相关的两个参数:
  • na_values:默认会将'-1.#IND', '1.#QNAN', '1.#IND', '-1.#QNAN', '#N/A N/A','#N/A', 'N/A', 'NA', '#NA', 'NULL', 'NaN', '-NaN', 'nan', '-nan', '', 转换为NaN,且na_values参数还支持定义另外的应处理为缺失值的值
原版解释:
na_values
: scalar, str, list-like, or dict, default None
Additional strings to recognize as NA/NaN. If dict passed, specific per-column NA values. By default the following values are interpreted as NaN: '-1.#IND', '1.#QNAN', '1.#IND', '-1.#QNAN', '#N/A N/A','#N/A', 'N/A', 'NA', '#NA', 'NULL', 'NaN', '-NaN', 'nan', '-nan', ''
  • keep_default_na:bool型,决定是否自动转NaN
name_columns = [' ','名字','类型', '城市', '地区', '地点', '评分', '评分人数', '价格']
tabledata = pandas.read_excel("./hotel.xlsx", header=0, names=name_columns, sep=',')
tableline = tabledata[tabledata['类型'].isnull()]
print(tableline)

5、只修改某一列的缺失值

fillna函数用于替换缺失值,常见参数如下:
  • value参数决定要用什么值去填充缺失值
  • axis:确定填充维度,从行开始或是从列开始
  • limit:确定填充的个数,int型
通常limit参数配合axis可以用于替换数量方向的控制 我们这里根据需求,最简单的就是将需要修改的这一列取出来进行修改,之后对原数据进行列重新赋值即可
name_columns = [' ','名字','类型', '城市', '地区', '地点', '评分', '评分人数', '价格']
tabledata = pandas.read_excel("./hotel.xlsx", header=0, names=name_columns, sep=',')
tableline = tabledata['类型'].fillna(value='其他')
tabledata['类型'] = tableline
print(tabledata)

6、修改某一列,用平均值代替缺失值

这个的思路和上面一个基本一致,区别在于我们需要线求出平均值。平均值的求解肯定不需要缺失值参与,于是我们先取出某一列不存在的缺失值的所有数据,再取出这一列数据,通过mean函数直接获取平均值。 同理的函数使用还有:
  • mean()平均值
  • median()中位数
  • max()最大值
  • min()最小值
  • sum()求和
  • std()标准差
  • Series类型独有的方法:argmax()最大值的位置 argmin()最小值的位置
name_columns = [' ','名字','类型', '城市', '地区', '地点', '评分', '评分人数', '价格']
tabledata = pandas.read_excel("./hotel.xlsx", header=0, names=name_columns, sep=',')
tableline = tabledata[tabledata['评分'].isnull().values==False]
score_avg = tableline['评分'].mean()
tableline = tabledata['评分'].fillna(value=score_avg)
tabledata['评分'] = tableline
print(tabledata)

0346fb3ebe0b4448baaadf20090ccf9c.png

近期精彩内容推荐:  

8e775beeb7505f3b5bd19f2aa29521b4.png 程序员这碗青春饭,怎么吃得更久一点?

8e775beeb7505f3b5bd19f2aa29521b4.png 顺丰小哥连升3级,国家授予特别奖!

8e775beeb7505f3b5bd19f2aa29521b4.png 狠人 Spring Cloud 20000 字总结!

8e775beeb7505f3b5bd19f2aa29521b4.png python实现文件自动归类

1315f42a3f2deca9db80399019a81762.png

6d353e459d2f5ce4ba30237632b90219.png

在看点这里c9a22de094a4cb09513525af47285543.gif好文分享给更多人↓↓

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值