gpt4 book ai didi

python - Pandas 根据天数列复制 df 行

转载 作者:太空宇宙 更新时间:2023-11-03 15:44:05 27 4
gpt4 key购买 nike

我有以下 DF

DF数量

| hold_date  | day_count | qty  |   item   | ccy |
+------------+-----------+------+----------+-----+
| 2015-01-01 | 1 | 1200 | CB04 box | USD |
| 2015-01-01 | 3 | 1500 | AB01 box | USD |
| 2015-01-02 | 2 | 550 | CB03 box | USD |

我想根据 day_count 递增 hold_date。例如 item : AB01 box 将添加如下两行。所以 df 可能看起来像这样。

DF数量

| hold_date  | qty  |   item   | ccy |
+------------+------+----------+-----+
| 2015-01-01 | 1200 | CB04 box | USD |
| 2015-01-01 | 1500 | AB01 box | USD |
| 2015-01-02 | 1500 | AB01 box | USD |
| 2015-01-03 | 1500 | AB01 box | USD |
| 2015-01-02 | 550 | CB03 box | USD |
| 2015-01-03 | 550 | CB03 box | USD |

最佳答案

需要:

s=df.day_count
s1=[pd.Timedelta(x,'D') for x in sum(df.day_count.apply(lambda x : list(range(x))),[])]
df_new=df.reindex(df.index.repeat(s))
df_new['hold_date']=df_new.hold_date+s1
df_new
Out[642]:
hold_date day_count qty item ccy
0 2015-01-01 1 1200 CB04box USD
1 2015-01-01 3 1500 AB01box USD
1 2015-01-02 3 1500 AB01box USD
1 2015-01-03 3 1500 AB01box USD
2 2015-01-02 2 550 CB03box USD
2 2015-01-03 2 550 CB03box USD

关于python - Pandas 根据天数列复制 df 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51108117/

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