簡體   English   中英

如何在 python 中使用 pandas 對多個 DataFrame 執行外部合並

[英]how to perform outer merge on multiple DataFrames using pandas in python

我有 125 個具有相同列名的 csv 文件。 我想合並所有這些(on=column)。 我嘗試了以下代碼,但它不起作用(似乎它在無限循環中運行)。

filelist = glob.glob('*.csv')
dflist = []
for filename in filelist:
df = pd.read_csv(filename)
dflist.append(df)
df_2 = reduce(lambda  left,right: pd.merge(left,right,on=['gene_id'],how='outer'), dflist)

我不能像 df_new = pd.concat([df1, df2, df3, df4], axis=1)) 那樣使用 pd.concat,因為 csv 文件的行長不同。

還有其他方法可以對多個文件執行 pd.merge 嗎?

提前致謝!!

試試這個代碼。

filelist = glob.glob('*.csv')
merged_df = pd.read_csv(filelist[0])

for filename in filelist:
    df = pd.read_csv(filename)
    merged_df = pd.merge(merged_df, df, on = ['gene_id'], how = 'outer')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM