gpt4 book ai didi

python - Python 中基于多行值填充列

转载 作者:行者123 更新时间:2023-12-01 03:55:19 24 4
gpt4 key购买 nike

我有一个数据框A,其中包含一些空单元格,我想将其填充为数据框B。这是一个示例数据:

A=
Month Type Sale
2016-01 A 20
2016-02 A 10
2016-01 B 40
2016-02 B 30
2016-01 C
2016-02 C
2016-01 D
2016-02 D

B=
Month Type Sale
2016-01 A 20
2016-02 A 10
2016-01 B 40
2016-02 B 30
2016-01 C 60
2016-02 C 40
2016-01 D 60
2016-02 D 40

这是我所做的:

emptTypes= ['C', 'D']
x = A.groupby('Month', sort = False).Sale.sum()
B['Sale'][B['Type'].isin(emptTypes) & B['Month'].isin(x.index)]=x

什么也没发生!

最佳答案

我认为你可以使用fillna通过 sum :

df['Sale'] = df.groupby('Month', sort = False).Sale.apply(lambda x: x.fillna(x.sum()))
print (df)
Month Type Sale
0 2016-01 A 20.0
1 2016-02 A 10.0
2 2016-01 B 40.0
3 2016-02 B 30.0
4 2016-01 C 60.0
5 2016-02 C 40.0
6 2016-01 D 60.0
7 2016-02 D 40.0

关于python - Python 中基于多行值填充列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37578012/

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