Pandas入门使用总结

一 Dataframe

pandas.DataFrame接口描述
pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)
参数作用
datanumpy ndarray(结构化或同类),dict或DataFrame,Dict可以包含Series,数组,常量或类似列表的对象
indexdataframe的索引,如果没有自定义,则默认为RangeIndex(0,1,2,…,n)
columnsdataframe的列标签,如果没有自定义,则默认为RangeIndex(0,1,2,…,n)
dtype默认None,要强制的数据类型。 只允许一个dtype
copyboolean,默认为False

创建Dataframe

创建空Dataframe:a=pd.DataFrame()

1.使用列表创建

在这里插入图片描述

2.使用字典

在这里插入图片描述

pandas读文件

hr_df是dataframe类型的,注意names是自己给读取的几列数据取的名字,并不是原本文件里面的列名

  hr_df = pd.read_csv(os.path.join(data_catalog, filename), sep=',', header=None, names=["index", "score_change", "Q1", "Q2", 'doctor', 'robot'])

pandas写文件

hr_low_df.to_csv('pro2/' + '{}_low_{}.csv'.format(fname,tempname), sep=',', header=None, index=None, encoding='utf-8')

Dataframe 操作数据

1 获取score_change列数据

print(hr_df['score_change'])#注意返回值类型是series类型,但是有tolist方法

2 获取某行数据(如获取c行数据)

print(hr_df.loc['c'])#同样返回的是series类型
#如果没有索引
print(hr_df.loc[0])#表示获取第0行数据

.loc for label based indexing 基于行列名取数据

.iloc for positional indexing 基于位置取数据

.ix 既可以标签,又可以基于位置
在这里插入图片描述

在这里插入图片描述
至于使用loc,iloc,at iat的区别可以参见此链接
还有这篇,当行索引不是数字的时候,遍历所有的行时,用iloc就很方便
3 插入列
在最后一列插入列
在这里插入图片描述
在第0列插入

df.insert(0,'qid',data_df['qid'])
#第一个参数0表明第0列插入,第一列插入则为1,第二个参数qid表明插入的列名为qid,第三个参数为插入的列元素,可为series类型,也可为列表类型

4 删除列

df.pop('A')#表明删除第A行
df.drop(['TotalWorkingYears', 'YearsWithCurrManager'], axis = 1, inplace = True) #axis 默认为0,指删除行,因此删除columns时要指定axis=1,inplace=True,则会直接在原数据上进行删除操作,删除后无法返回

5.简单的数据描述
在这里插入图片描述
在这里插入图片描述

Dataframe迭代器

dataframe可以理解为一张二维数据表

iterrows() 是在数据框中的行进行迭代的一个生成器,它返回每行的索引及一个包含行本身的对象。
在这里插入图片描述
index返回的是行索引

在这里插入图片描述
这是row返回的数据

缺失值
print(df.isnull().any())#检查是否有缺失值
df=df.dropna()#删除有缺失值的行

缺失值处理
显示缺失值所在的行
在这里插入图片描述

二 Series类型

在这里插入图片描述
创建series,1.不显示指定index
在这里插入图片描述
2 显示指定index
在这里插入图片描述
3 通过字典创建
在这里插入图片描述

4 使用numpy创建
在这里插入图片描述

以后用到啥慢慢更新,使用聚集的话 可以用groupby

lambda函数的用法

Series参考
python切片参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值