gpt4 book ai didi

python - 我需要计算数据框列

转载 作者:行者123 更新时间:2023-12-01 07:18:41 24 4
gpt4 key购买 nike

我有一个员工数据框,他的每一百收入都会有一个增量,我确实有一个问题如何计算数据框列并扩展列

df = pd.DataFrame({'user': ['Bob', 'Jane', 'Alice'], 
'increment': [2, 6, 4],
'income' : [100, 400, 300]})

user increment income
0 Bob 2 100
1 Jane 6 400
2 Alice 4 300

我需要知道如何计算上面的数据框,最终结果应该是这样的,下面的收入 max_limit 是 5000

     user  increment  income
0 Bob 2 100
Bob 4 200
Bob 6 300
Bob 8 400
Jane 6 400
Jane 12 800
Jane 18 1200
Jane 24 1600
Alice 4 300
Alice 8 600
Alice 12 900
Alice 16 1200

最佳答案

使用pandas.Index.repeat,然后使用groupby.agg:

limit = 1000 # Changed from 5,000 to 1,000 for short example
new_df = df.loc[df.index.repeat(limit / df['income'])]
new_df.update(new_df.groupby('user').agg({'income': 'cumsum', 'increment': 'cumsum'}))
print(new_df)

输出:

   income  increment   user
0 100 2 Bob
0 200 4 Bob
0 300 6 Bob
0 400 8 Bob
0 500 10 Bob
0 600 12 Bob
0 700 14 Bob
0 800 16 Bob
0 900 18 Bob
0 1000 20 Bob
1 400 6 Jane
1 800 12 Jane
2 300 4 Alice
2 600 8 Alice
2 900 12 Alice

关于python - 我需要计算数据框列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57815022/

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