如何使用python spark将多个数据集合并成一个完整的大数据集?
我想从17个不同的csv文件中创建一个大数据集。每个都包含大约200000行和相同的列。 所以我想做的就是创建一个数据帧,以便以后可以使用它 我试图寻找SQL联接,但它们似乎需要一个ID才能联接。如何使用python spark将多个数据集合并成一个完整的大数据集?,python,sql,apache-spark,bigdata,Python,Sql,Apache Spark,Bigdata,我想从17个不同的csv文件中创建一个大数据集。每个都包含大约200000行和相同的列。 所以我想做的就是创建一个数据帧,以便以后可以使用它 我试图寻找SQL联接,但它们似乎需要一个ID才能联接。 数据集不包含单个ID 如果您想用17个具有相同列的csv文件创建一个大数据框架 使用glob()列出您的文件 使用生成器表达式读取文件 使用concat()方法组合它们 将新数据帧写入新的csv文件 试试这个: import pandas as pd from glob import glob al
数据集不包含单个ID 如果您想用17个具有相同列的csv文件创建一个大数据框架
glob()
列出您的文件concat()
方法组合它们import pandas as pd
from glob import glob
all_csv_files = glob('csv_folder/*.csv')
df = pd.concat((pd.read_csv(csv_file) for csv_file in all_csv_files), ignore_index=True)
df.to_csv('final_csv.csv', index=False)
你不想加入一个专栏?那么,是否要从所有csv文件中附加数据?检查这个我之前看到的问题,但没有注意其中一个答案。。。似乎
df_concat=df.union(df2)
就可以了。一次只需要一个数据集。tks@pyofeyfrom functools import reduce from pyspark.sql import DataFrame dfs=[df1,df2,df3]df=reduce(DataFrame.unionAll,dfs)
这就成功了。。。现在我有一个大的数据集。可能是重复的。不使用join或union,只需一次读取所有csv文件即可创建单个数据帧。