Tôi muốn đọc một số tệp csv từ một thư mục thành gấu trúc và ghép chúng thành một DataFrame lớn. Tôi đã không thể tìm ra nó mặc dù. Đây là những gì tôi có cho đến nay:
import glob
import pandas as pd
# get data file names
path =r'C:\DRO\DCL_rawdata_files'
filenames = glob.glob(path + "/*.csv")
dfs = []
for filename in filenames:
dfs.append(pd.read_csv(filename))
# Concatenate all data into one DataFrame
big_frame = pd.concat(dfs, ignore_index=True)
Tôi đoán tôi cần một số trợ giúp trong vòng lặp for ???
big_frame = pd.concat(dfs, ignore_index=True)
?, dù sao khi bạn có một danh sách các tệp dữ liệu, bạn sẽ cần phải lặp lại danh sách và nối vớibig_frame
dfs
, vì vậy một cái gì đó như for df in dfs: big_frame.concat(df, ignore_index=True)
nên hoạt động, bạn cũng có thể thử append
thay vì concat
cũng có.
concat
nên xử lý một danh sách DataFrames tốt như bạn đã làm. Tôi nghĩ rằng đây là một cách tiếp cận rất tốt.
dfs
danh sách, bạn không muốn thay thế dòngdata = pd.read_csv(filename)
vớidfs.append(pd.read_csv(filename)
. Sau đó, bạn sẽ cần phải lặp qua danh sách vàconcat
, tôi không nghĩconcat
sẽ hoạt động trên danh sáchdf
s.