如何在Python中合并更多的csv文件?

时间:2019-11-24 21:29:26

标签: python pandas csv

我正在尝试将所有找到的csv文件合并到给定目录中。问题在于所有csv文件的标题几乎相同,只有一列不同。我想将该列从所有csv文件添加到合并的csv文件(以及所有csv的4个公共列)。 到目前为止,我有这个:

import pandas as pd
from glob import glob

interesting_files = glob(
    "C:/Users/iulyd/Downloads/*.csv")
df_list = []
for filename in sorted(interesting_files):
    df_list.append(pd.read_csv(filename))
    full_df = pd.concat(df_list, sort=False)
    full_df.to_csv("C:/Users/iulyd/Downloads/merged_pands.csv", index=False)


使用此代码,我设法合并了所有csv文件,但问题是前“ n”行中的某些列为空,并且只有在某些行之后,它们才从相应的csv中获得正确的值。如何在列标题之后使值正常开始?

1 个答案:

答案 0 :(得分:1)

可能只需要添加名称列:

selected_list = []
for t in target_list:
   r1 = l.split("/")[0]
   a1 = l.split("/")[1].split(".")[0]
   b1 = l.split("/")[1].split(".")[1]

   for l in mylist:
      r2 = l.split("/")[0]
      a2 = l.split("/")[1].split(".")[0]
      b2 = l.split("/")[1].split(".")[1]

      if (r1==r2) & (a1==a2) & (b1==b2):
         selected_list.append(l)