2017-06-16 149 views
1

你好,我是全新的处理大数据和舒适的python 我有150个csv,每个大小都是70MB,我必须将它集成到一个源文件中,以便删除基本统计数据,如唯一计数,唯一名称和所有。将150个csv文件导入到一个数据源中

任何人都可以建议我应该怎么做呢? 我遇到了python中的'pyyelastic search'软件包,它对我来说是非常可行的。

需要建议!

回答

0

尝试使用pandas包。

读一个CSV是:

import pandas as pd 
df = pd.read_csv('filelocation.csv') 

在多个文件时,只需concat他们。让我们说ls是文件位置的列表,然后:

df = pd.concat([pd.read_csv(f) for f in ls]) 

,然后把它们写为单个文件,这样做:

df.to_csv('output.csv') 
当然

这一切都是有效的内存操作( 70x150 =〜10.5GB RAM)。如果这是不可能的 - 考虑构建一个增量进程或使用数据帧。

0

一个选项,如果你是在AWS

第一步 - 将数据移动到S3(AWS本地文件存储) 第二步 - 创建表的红移 第三步:每个数据结构 - 运行COPY命令从S3移动数据Redshift(AWS native DW)

COPY command loads data in bulk, detects file name pattern