python - 如何优化 pandas 数据框的分块?

标签 python pandas python-multiprocessing python-multithreading

我需要将数据集分割成 block ,目前我使用以下简单代码来完成此操作:

    cases = []
    for i in set(df['key']):
        cases.append(df[df['key']==i].copy())

但是我的数据集很大,这最终需要几个小时,所以我想知道是否有一种方法可以使用多线程来加速这个过程?或者是否有其他方法可以加快速度?

最佳答案

我相当确定您想要按唯一键进行分组。使用内置功能来执行此操作。

cases = list(df.groupby('key'))

关于python - 如何优化 pandas 数据框的分块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51274847/

相关文章:

python - 我应该使用哪个语句来替换创建虚拟变量的自定义函数以提高 python 中的速度?

python - 读取 CSV 文件时合并重复的列

python - rpy2 不会将 "_"转换为 "."

python - 在 python 中测试矩阵元素的最快方法

python - 从列名称列表中切片并通过将另一个列表指定为这些列中的名称来重命名它们

python - 加快读取多个pickle文件

python - python中的多处理,多个进程运行相同的指令

Python 多处理队列、管道、共享内存

python - 优化 App Engine 上的 RSS 解析以避免高 CPU 警告

python - 如何检查 Tensorflow .tfrecord 文件?