将150个csv文件导入到一个数据源中
问题描述:
你好,我是全新的处理大数据和舒适的python 我有150个csv,每个大小都是70MB,我必须将它集成到一个源文件中,以便删除基本统计数据,如唯一计数,唯一名称和所有。将150个csv文件导入到一个数据源中
任何人都可以建议我应该怎么做呢? 我遇到了python中的'pyyelastic search'软件包,它对我来说是非常可行的。
需要建议!
答
尝试使用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)。如果这是不可能的 - 考虑构建一个增量进程或使用数据帧。
答
一个选项,如果你是在AWS
第一步 - 将数据移动到S3(AWS本地文件存储) 第二步 - 创建表的红移 第三步:每个数据结构 - 运行COPY命令从S3移动数据Redshift(AWS native DW)
COPY command loads data in bulk, detects file name pattern