gpt4 book ai didi

Python:将数据转换为时间序列

转载 作者:行者123 更新时间:2023-12-01 07:49:52 29 4
gpt4 key购买 nike

我的数据框中有一些数据(交易数据),我需要每天进行总结。

数据连接到流,因此我有很多行,其中包含以下对此很重要的数据点(还有更多数据点,因此不在此处复制)

数量、开始日期、结束日期

例如:

Volume, Start Date, End Date   
100, 1 April 2019, 30 June 2019
50, 1 Jan 2019, 30 June 2019

所有这些行的开始日期和结束日期都可以重叠。

我正在寻找一种创建输出的简单方法:(使用上面的 2 笔交易作为示例数据)天,总交易量

例如:

1 Jan, 50  
2 Jan, 50
....
1 April, 150
2 April, 150
...
29 June, 150
30 June, 150
1 July, 0
...
31 Dec, 0

我可以遍历每一行,然后遍历每笔交易。但对于这么多人来说,这似乎是一个漫长而缓慢的过程。

我正在使用 Jupyter 笔记本和 Python 3。

感谢任何帮助 - 即使它为我指明了我在搜索中可能错过的解决方案......

最佳答案

我已经通过过滤解决了这个问题。

def volumebyday(date, df, start, end, col):
#date = date to sum, df = dataframe, start/end = name of start/end date column, col = column to sum
trade1 = df[start] <= date
trade2 = df[end] >= date
return df[col][trade1 & trade2].sum(axis=0)

然后通过 lambda 函数使用它

df = df.apply(lambda row: volumebyday(row["date"], trades, "start_date","end_date","qty")

关于Python:将数据转换为时间序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56292797/

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