簡體   English   中英

從路徑讀取多個 CSV 文件

[英]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.

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