Chciałbym odczytać kilka plików csv z katalogu do pand i połączyć je w jedną dużą ramkę danych. Nie byłem jednak w stanie tego rozgryźć. Oto co mam do tej pory:
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)
Chyba potrzebuję pomocy w pętli for ???
big_frame = pd.concat(dfs, ignore_index=True)
miksujesz alias modułu z nazwą modułu, prawda ? W każdym razie, gdy będziesz mieć listę ramek danych, będziesz musiał iterować listę i big_frame
dfs
teraz zapętlić , więc coś takiego for df in dfs: big_frame.concat(df, ignore_index=True)
powinno działać, możesz także spróbować append
zamiast tego concat
.
concat
powinien obsługiwać listę DataFrames tak dobrze, jak ty. Myślę, że to bardzo dobre podejście.
dfs
listy, nie chcesz zamienić liniędata = pd.read_csv(filename)
zdfs.append(pd.read_csv(filename)
. Będziesz wtedy musiał przejrzeć listę iconcat
, nie sądzę,concat
że zadziała na liściedf
s.