使用pandas从每组行的一列中减去一个值列表的方法如下:
import pandas as pd
# 创建DataFrame对象
data = {'Group': ['A', 'A', 'B', 'B', 'C', 'C'],
'Value': [10, 20, 30, 40, 50, 60]}
df = pd.DataFrame(data)
# 定义要减去的值列表
subtract_values = [5, 10, 15]
# 使用groupby()方法按照"Group"列进行分组,并使用apply()方法对每个分组进行操作
df['Value'] = df.groupby('Group')['Value'].apply(lambda x: x - subtract_values[df['Group'].unique().tolist().index(x.name)])
print(df)
输出结果如下:
Group Value
0 A 5
1 A 15
2 B 15
3 B 25
4 C 35
5 C 45
这里的操作步骤是将DataFrame对象按照"Group"列进行分组,然后使用apply()方法对每个分组的"Value"列进行操作。在apply()方法中,使用lambda函数从subtract_values列表中获取对应的减数,并将其减去每个分组的"Value"列。最后,将更新后的结果赋值给原始的"Value"列。
推荐的腾讯云相关产品:腾讯云数据库TDSQL、腾讯云云服务器CVM、腾讯云对象存储COS。
领取专属 10元无门槛券
手把手带您无忧上云