Python 如何优化数据帧的分块?

Python 如何优化数据帧的分块?,python,pandas,python-multiprocessing,python-multithreading,Python,Pandas,Python Multiprocessing,Python Multithreading,我需要将我的数据集分割成块,我目前使用以下简单代码执行此操作: cases = [] for i in set(df['key']): cases.append(df[df['key']==i].copy()) 但是我的数据集非常大,这需要几个小时,所以我想知道是否有一种方法可以使用多线程来加速这一过程?或者是否有其他方法可以加快速度?我很确定您希望按唯一键分组。使用内置功能执行此操作 cases = list(df.groupby('key')) 我真的不认

我需要将我的数据集分割成块,我目前使用以下简单代码执行此操作:

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

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

我很确定您希望按唯一键分组。使用内置功能执行此操作

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

我真的不认为你想走这条路。我认为你需要扩展这个问题,把你想做的任务放在更广泛的意义上(现在把多重处理放在一边)什么是巨大的?排?列?大约8000万行乘以30列,还有大约30000个我正试图拆分的唯一键by@AntoineBarthelet多处理是一种绕过小熊猫的方法,或者说大部分的小熊猫,可以很自然地做到这一点。听起来你有个好问题。我重申,我认为应该放弃多处理方法,你应该让人们仔细检查你试图加速的代码(以一种方式),如果数据适合内存,这应该是正确的答案。