【发布时间】:2019-01-29 11:41:05
【问题描述】:
关于使用 Numpy array_split 方法的行数限制有什么想法吗?
我有一个 dataframe 有 +6m 行,想把它分成 20 个左右的块。
我的尝试遵循如下所述: Split a large pandas dataframe
使用 Numpy 和 array_split 函数,但是作为一个非常大的 dataframe 它只会永远持续下去。
我的dataframe 是 df,包括 8 列和 660 万行。
df_split = np.array_split(df,20)
关于拆分此的替代方法的任何想法?或者,也欢迎提高数据帧性能的提示。
【问题讨论】:
-
数组应该如何?每个数组有多少行?也许你可以在循环或列表理解中做到这一点。也换成
(df.values,20)看看是不是更快 -
你也试过this吗?
-
鉴于有 660 万行,n = 20 拆分意味着每个数组大约有 330k 行。但是这个分割有点随意,可以是 10、20 或 100,我的重点是性能。
-
谢谢@markuscosinus。是的,做到了,但似乎也不起作用,所以恢复到原来的方法。
-
您是否尝试过只使用普通的旧
.iloc,然后将每个视图保存到一个文件并单独处理每个文件?
标签: python pandas numpy dataframe split