不完整将多个csv文件导入Pandas并连接到一个DataFrame中

m3eecexj  于 2023-01-06  发布在  其他
关注(0)|答案(2)|浏览(128)

请帮助我找到解决方案,从多个csv文件导入数据到一个DataFrame在python中的问题。代码是:

import pandas as pd
import os
import glob

path = r'my_full_path' 
os.chdir(path)
results = pd.DataFrame()

for counter, current_file in enumerate(glob.glob("*.csv")):
     namedf = pd.read_csv(current_file, header=None, sep=",", delim_whitespace=True)
     results = pd.concat([results, namedf], join='outer')

results.to_csv('Result.csv', index=None, header=None, sep=",")

问题是数据的一部分移动到了行中,而不是新的列中。我的代码中有什么问题?
P.S.:我发现有关导入多个csv文件到DataFrame的问题,例如:Import multiple csv files into pandas and concatenate into one DataFrame,但解决方案不能解决我的问题:-(

yvgpqqbh

yvgpqqbh1#

通过在pd.read_csv.read_csv()-〉append(dataFrames)-〉concat中使用join解决了这个问题:

def get_merged_files(files_list, **kwargs):
dataframes = []
 for file in files_list:
    df = pd.read_csv(os.path.join(file), **kwargs)
    dataframes.append(df)
 return pd.concat(dataframes, axis=1)
ahy6op9u

ahy6op9u2#

您可以尝试使用此:

import pandas as pd
import os

files = [file for file in os.listdir('./Your_Folder')]  # Here is where all the files are located.

all_csv_files = pd.DataFrame()

for file in files:
    df = pd.read_csv("./Your_Folder/"+file)
    all_csv_files = pd.concat([all_csv_files, df])
    all_csv_files.to_csv("All_CSV_Files_Concat.csv", index=False)

相关问题