在python數(shù)據(jù)分析中,有時(shí)需要根據(jù)多列數(shù)據(jù)生成中間結(jié)果,pandas給我們帶來(lái)了很多方便,通常簡(jiǎn)短的代碼可以實(shí)現(xiàn)一些高級(jí)功能,靈活掌握一些技巧可以事倍功半
pandas的apply方法用于對(duì)指定列的每個(gè)元素進(jìn)行相同的操作,下面生成一個(gè)dataFrame用于演示:
import pandas as pd
a=range(5)
b=range(5,10)
c=range(10,15)
data=pd.DataFrame([a,b,c]).T
data.columns=["a","b","c"]
print(data)
上面的代碼生成的數(shù)據(jù)如下:
a b c
0 0 5 10
1 1 6 11
2 2 7 12
3 3 8 13
4 4 9 14
下面使用使用a,b兩列相加生成x1列
data["x1"]=data[["a","b"]].apply(lambda x:x["a"]+x["b"],axis=1)
結(jié)果如下:
a b c x1
0 0 5 10 5
1 1 6 11 7
2 2 7 12 9
3 3 8 13 11
4 4 9 14 13
關(guān)鍵的參數(shù)是axis=1,指定計(jì)算的方向是行而不是列,默認(rèn)是0,也就是按列進(jìn)行計(jì)算
到此這篇關(guān)于pandas apply使用多列計(jì)算生成新的列實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)pandas apply多列計(jì)算生成新的列內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- pandas使用apply多列生成一列數(shù)據(jù)的實(shí)例