因此,我目前有一个目录,我们将其称为/mydir,其中包含36个CSV文件,每个2.1 GB和具有相同的尺寸。他们都是一样的大小,我想将它们读入大熊猫,将它们连接在一起并排侧(行左右的量保持不变),然后输出所产生的数据帧作为一个大的CSV。我为此编写的代码适用于组合其中的一部分,但在某个点后出现内存错误。我想知道是否有比我有更高效的方式来做到这一点。熊猫组合多个CSV和输出为一个大文件
df = pd.DataFrame()
for file in os.listdir('/mydir'):
df.concat([df, pd.read_csv('/mydir' + file, dtype = 'float)], axis = 1)
df.to_csv('mydir/file.csv')
有人建议我把它分解成小块,结合文件中的6组,然后结合这些反过来又在一起,但我不知道这是否是一个有效的解决方案,将避免内存错误问题
编辑:查看该目录:
-rw-rw---- 1 m2762 2.1G Jul 11 10:35 2010.csv
-rw-rw---- 1 m2762 2.1G Jul 11 10:32 2001.csv
-rw-rw---- 1 m2762 2.1G Jul 11 10:28 1983.csv
-rw-rw---- 1 m2762 2.1G Jul 11 10:21 2009.csv
-rw-rw---- 1 m2762 2.1G Jul 11 10:21 1991.csv
-rw-rw---- 1 m2762 2.1G Jul 11 10:07 2000.csv
-rw-rw---- 1 m2762 2.1G Jul 11 10:06 1982.csv
-rw-rw---- 1 m2762 2.1G Jul 11 10:01 1990.csv
-rw-rw---- 1 m2762 2.1G Jul 11 10:01 2008.csv
-rw-rw---- 1 m2762 2.1G Jul 11 09:55 1999.csv
-rw-rw---- 1 m2762 2.1G Jul 11 09:54 1981.csv
-rw-rw---- 1 m2762 2.1G Jul 11 09:42 2007.csv
-rw-rw---- 1 m2762 2.1G Jul 11 09:42 1998.csv
-rw-rw---- 1 m2762 2.1G Jul 11 09:42 1989.csv
-rw-rw---- 1 m2762 2.1G Jul 11 09:42 1980.csv
做所有文件具有行的同一#? – MaxU
是的,所有这些尺寸都是相同的,我会更新帖子来指定。 – JSolomonCulp
怎么样使用Linux'paste'工具 - '粘贴-d '' * .CSV> result.csv'? – MaxU