gpt4 book ai didi

Python - 基于行值的乘法

转载 作者:行者123 更新时间:2023-11-28 19:53:32 25 4
gpt4 key购买 nike

我有一个数据框和三个变量 x、y、z。

x = 10, y = 20, z = 30

df = pd.DataFrame({'A':['a','b','c'],
'B':[6,7,8]})

这是我想做的:

创建一个新列“C”:

If df['A'] == 'a', df['C'] = df['B']*x
If df['A'] == 'b', df['C'] = df['B']*y
If df['A'] == 'c', df['C'] = df['B']*z

有什么快速的方法吗?

最佳答案

创建一个字典,将列 A 值映射到乘法值,然后使用 map在 A 列上乘以 B 列:

mul_map = {'a': 10, 'b': 20, 'c': 30}
df['C'] = df['B'] * df['A'].map(mul_map)

结果输出:

   A  B    C
0 a 6 60
1 b 7 140
2 c 8 240

关于Python - 基于行值的乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44012855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com