[英]Reading multiple CSV files from path
我有一組 CSV 文件,我想從 Windows 路徑中讀取它們。 我的代碼是這樣的:
directory = os.listdir(r'C:\Users\User\Documents\etc...')
for files in directory:
print(files)
dataset = pd.read_csv(files, header = None)
trainSet = dataset.values.tolist()
editedSet = dataset.values.tolist()
問題是我收到錯誤No such file or directory: "filename"
而文件當然存在於目錄中。 我找到的解決方案是針對純文本文件,而我有 CSV。 關於我做錯了什么的任何建議?
謝謝
os.listdir
返回relative
對於輸入路徑的目錄內的文件列表
您需要將其與輸入路徑連接以實際調用文件
base_dir = r'C:\Users\User\Documents\etc...'
directory = os.listdir(base_dir)
for files in directory:
print(files)
path = os.path.join(base_dir, files)
print(path)
dataset = pd.read_csv(path, header = None)
trainSet = dataset.values.tolist()
editedSet = dataset.values.tolist()
問題是您只提供文件名作為參數。 您應該改用“路徑”。
有很多方法可以解決這個問題。 現代方法是使用pathlib而不是os
進行文件管理。
這是pathlib
的解決方案。
from pathlib import Path
root_path = Path(r'C:\Users\User\Documents\etc...')
file_paths = root_path.glob('*.csv')
files = [root_path.joinpath(file_path) for file_path in file_paths]
for file in files:
print(file)
dataset = pd.read_csv(file, header = None)
trainSet = dataset.values.tolist()
editedSet = dataset.values.tolist()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.