将Pandas DataFrame中的列与DataFrame中的列列相结合

kas*_*rhj 11 python list dataframe pandas

请考虑以下内容DataFrame.

n  v1 v2 v3 v4 v5
0   1  2  3  4  5
1   1  2  3  4  5
2   1  2  3  4  5
Run Code Online (Sandbox Code Playgroud)

对于每一行,我要添加的值v2,v3,v4到列表,并在列表乘值v5,并把结果放入一个新列v6,这样我最终有一个DataFrame是这样的:

n  v1  v6
0   1  [10, 15, 20]
1   1  [10, 15, 20]
2   1  [10, 15, 20]
Run Code Online (Sandbox Code Playgroud)

我怎样才能在熊猫中实现这一目标?

Ale*_*ley 22

你可以在一行中这样做:

>>> df['v6'] = df[['v2', 'v3', 'v4']].mul(df['v5'], axis=0).values.tolist()
>>> df
   v1  v2  v3  v4  v5            v6
0   1   2   3   4   5  [10, 15, 20]
1   1   2   3   4   5  [10, 15, 20]
2   1   2   3   4   5  [10, 15, 20]
Run Code Online (Sandbox Code Playgroud)

这确实列的相关多元化,放v2,v3v4值出(逐行)列表的列表,并创建新列v6.