gpt4 book ai didi

python - 大型时间序列数据集上不同大小的 block

转载 作者:太空宇宙 更新时间:2023-11-04 04:01:53 25 4
gpt4 key购买 nike

我需要将大型数据集导入 pandas dataframe 以便进行一些数据操作。

我发现这样做的一个好方法是:

  • 使用分块加载并分块处理数据帧。分解任务,分别处理不同的部分,然后再将它们组合起来。

如果我定义我的 chuncksize 等于 1000:

pd.read_sql_query(sql=query, con=engine, chunksize=1000)

循环的每次迭代都会将 1000 行读入数据帧。

但是,我的数据框有一个 DATE 列,我需要确保每个 block 都包含每个产品(SKU 列)的整个时间序列(DATE 列)。

  DATE     STORE   COD  SKU  UNITS_SOLD
2018-02-01 HD01 CD 70 539.000
2018-03-01 HD01 CD 70 511.000
2018-04-01 HD01 CD 70 468.000
2018-05-01 HD01 CD 70 447.000
2018-06-01 HD01 CD 70 382.000
2018-07-01 HD01 CD 70 348.000
2018-02-01 HA01 CD 80 539.000
2018-03-01 HA01 CD 80 511.000
2018-04-01 HA01 CD 80 468.000
2018-05-01 HA01 CD 80 447.000
2018-06-01 HA01 CD 80 382.000
2018-07-01 HA01 CD 80 348.000

确保每个 block 都将返回整个产品历史记录的最佳方法是什么?如果这 1000 行上有一个产品不完整,我想避免分成 2 个 block 。

最佳答案

您可能应该在发送的 SQL 中使用 groupby,这意味着您需要遍历 SKU 的所有可能值。如果您首先在服务器端设置一个以这种方式明确排序数据的 View ,则可以使用分块。

关于python - 大型时间序列数据集上不同大小的 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58134112/

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