pandas数据预处理

本文介绍了Pandas中Series和DataFrame的重索引操作,包括使用reindex()方法进行行和列的重索引,以及处理缺失值的方法,如drop()、fillna()和isnull()等。同时,探讨了分组处理中的聚合函数agg()、apply()及其在处理缺失值中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Series/dataFrame重新索引

reindex()方法是拷贝了一个值,与原来的数据不产生影响
对行进行重新索引
reindex( list(‘indexString’), fill_value=‘填充的数值’)
reindex(list(‘indexString’), method=‘ffill’) #ffill表示将前面的数据填充 bfill
s.unique()
s.value_counts()#统计数据数量
s.isin([1,2,3,5])


队列进行重新索引
reindex(columns=[列索引])

df.drop(‘A’,axis=0)#丢弃行数据.默认为行
df.sort_value(by=" ")
df.rank(method=‘first’,ascending=False)

判断索引是否重复
df.index.is_unique #判断
df.index.upique()

交换索引
df.swaplevel(‘row-1’,‘row-2’)


2.缺省值处理

问题一:grouped.size()与grouped.count()的区别
问题二:利用函数进行分组
问题三:利用函数进行聚合 grouped.agg(函数名)
xp:多个集合函数 grouped[‘data1’, ‘data2’].agg([‘mean’, ‘std’, peak])
# 给聚合后的列取名
grouped[‘data1’].agg([(‘agerage’, ‘mean’), (‘max-range’, peak)])
#给多个不同的列使用不同的聚合函数
d = {‘data1’: [‘mean’, peak, ‘max’, ‘min’],
‘data2’: ‘sum’}
grouped.agg(d)``
问题四:分组后apply()函数的使用
‘’’
#根据 column 排序,输出其最大的 n 行数据
def top(df, n=2, column=‘data1’):
return df.sort_values(by=column, ascending=False)[:n]
df.groupby(‘key1’).apply(top, n=3, column=‘data2’) #apply中的参数是传给函数的

1.使用apply()来处理分组后的缺省值

fill_meab = lamdbs g:g.fillna(g.mean())
data.groupby(group_key).apply(fill_mean)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值