免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Pandas對DataFrame單列/多列進(jìn)行運算(map, apply, transform, agg)

1.單列運算

在Pandas中,DataFrame的一列就是一個Series, 可以通過map來對一列進(jìn)行操作:

df['col2'] = df['col1'].map(lambda x: x**2)

其中l(wèi)ambda函數(shù)中的x代表當(dāng)前元素??梢允褂昧硗獾暮瘮?shù)來代替lambda函數(shù),例如:

  1. define square(x):
  2. return (x ** 2)
  3. df['col2'] = df['col1'].map(square)

2.多列運算

要對DataFrame的多個列同時進(jìn)行運算,可以使用apply,例如col3 = col1 + 2 * col2:

df['col3'] = df.apply(lambda x: x['col1'] + 2 * x['col2'], axis=1)

其中x帶表當(dāng)前行,可以通過下標(biāo)進(jìn)行索引。


3.分組運算

可以結(jié)合groupby與transform來方便地實現(xiàn)類似SQL中的聚合運算的操作:

df['col3'] = df.groupby('col1')['col2'].transform(lambda x: (x.sum() - x) / x.count())

在transform函數(shù)中x.sum()與x.count()與SQL類似,計算的是當(dāng)前group中的和與數(shù)量,還可以將transform的結(jié)果作為一個一個映射來使用, 例如:

  1. sumcount = df.groupby('col1')['col2'].transform(lambda x: x.sum() + x.count())
  2. df['col1'].map(sumcount)

對col1進(jìn)行一個map,得到對應(yīng)的col2的運算值。


4.聚合函數(shù)

結(jié)合groupby與agg實現(xiàn)SQL中的分組聚合運算操作,需要使用相應(yīng)的聚合函數(shù):

df['col2'] = df.groupby('col1').agg({'col1':{'col1_mean': mean, 'col1_sum‘’: sum}, 'col2': {'col2_count': count}})
上述代碼生成了col1_mean, col1_sum與col2_count列。



本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Python 數(shù)據(jù)分析——Pandas 分組運算
用pandas進(jìn)行數(shù)據(jù)分析實戰(zhàn)
pandas中的數(shù)據(jù)處理利器-groupby
25個例子學(xué)會Pandas Groupby 操作
50個Pandas高級操作,建議收藏!
pandas 時序統(tǒng)計的高級用法!
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服