熊猫使用部分通配符读取csv文件
问题内容:
我正在尝试编写一个脚本,该脚本导入一个文件,然后对该文件执行某些操作,然后将结果输出到另一个文件中。
df = pd.read_csv('somefile2018.csv')
上面的代码工作得很好。但是,我想避免在代码中对文件名进行硬编码。
该脚本将在包含script.py
和多个csv文件的文件夹(目录)中运行。
我尝试了以下方法:
somefile_path = glob.glob('somefile*.csv')
df = pd.read_csv(somefile_path)
但是我收到以下错误:
ValueError: Invalid file path or buffer object type: <class 'list'>
问题答案:
glob
返回列表,而不是字符串。该read_csv
函数将字符串作为输入来查找文件。尝试这个:
for f in glob('somefile*.csv'):
df = pd.read_csv(f)
...
# the rest of your script