2 回答

TA貢獻(xiàn)1802條經(jīng)驗 獲得超10個贊
你為什么要使用類來做到這一點?如果您的數(shù)據(jù)在熊貓數(shù)據(jù)框中,您可以簡單地執(zhí)行以下操作:
df['concat'] = df['title'] + df['imdb'] + df['critic'] + df['quote']

TA貢獻(xiàn)1829條經(jīng)驗 獲得超13個贊
一般來說,直接分配計算序列是清晰有效的。如果您希望使用顯式函數(shù)進(jìn)行系列計算,那么pipe您的數(shù)據(jù)框到您的函數(shù):
df = pd.DataFrame(np.arange(15).reshape((5, 3)))
def summer(x):
return x[0] + x[1] + x[2]
df['sum_1'] = df[0] + df[1] + df[2]
df['sum_2'] = df.pipe(summer)
print(df)
0 1 2 sum_1 sum_2
0 0 1 2 3 3
1 3 4 5 12 12
2 6 7 8 21 21
3 9 10 11 30 30
4 12 13 14 39 39
通常不需要將單個列傳遞給您的函數(shù)。什么是不推薦的是通過一個Python級逐行循環(huán)apply:
df['sum_3'] = df.apply(lambda x: x[0] + x[1] + x[2], axis=1)
添加回答
舉報