将列表中的文件名添加到数据框-Python

时间:2020-09-21 17:43:34

标签: python pandas dataframe

我以前使用以下脚本在文件夹中查找所有csv文件,并将它们附加到数据框。现在,我想将指定的文件附加到新的数据框中。

#define path for all CSV files
path = r'C:filepath'
csv_files = glob.glob(os.path.join(path, "*.csv"))

li = []

#removes rows with missing data and appends file to data frame
for csv in csv_files:
    df = pd.read_csv(csv, index_col=None, header=0)
    df = df.loc[(df['A'].notna()) & (df['B'].notna()) & (df['C'].notna())]
    li.append(df)

我想做的是添加如下内容:

file_list = ['name1', 'name2', 'name3']

仅将文件列表中的文件添加到df。

2 个答案:

答案 0 :(得分:0)

有了列表后,您就可以遍历列表中的项目并执行所需的操作:

file_list = ['name1', 'name2', 'name3']
for csv in file_list:
    df = pd.read_csv(csv, index_col=None, header=0)
    df = df.loc[(df['A'].notna()) & (df['B'].notna()) & (df['C'].notna())]
    li.append(df)

答案 1 :(得分:0)

我想我明白了,在很大程度上要感谢gtomer。

for file in file_list:
    try:
        df = pd.read_csv(path + file + '.csv', index_col=None, header=0)
        df = df.loc[(df['A'].notna()) & (df['B'].notna()) & (df['C'].notna())]
        li.append(df)
    except:
        print(file)