簡體   English   中英

python 讀取具有相同基本名稱的 csv 文件並保存為不同的數據幀

[英]python read csv files with same basename and save as different dataframes

I have 20 csv files with the same basename and a number from 100 to 2000 with an increment of 100 between files, such that samp_100.csv, samp_200.csv, samp_300.csv, ..., samp_1900.csv, samp_2000.csv.

我正在嘗試將這些文件讀入 python。 我正在嘗試以下。

T = np.arange(100,2100,100)
for i in T: 
    df = pd.read_csv("samp_{i}.csv".format(i=i))

雖然我沒有收到錯誤,但文件沒有按照從 100 到 2000 的正確順序讀取。當我使用 df.head 時,我看不到文件 samp_100.csv 的第一行。 這些文件也被連接成一個名為 df 的文件。 是否有等效的方法來實現這一點,但有 20 個單獨的數據幀,名稱為 df_100、df_200、...、df_1900、df_2000?

你需要pandas.concat

嘗試這個:

import numpy as np
import pandas as pd

T = np.arange(100,2100,100)

list_of_df = []
for i in T:
    temp_df = pd.read_csv(f"samp_{i}.csv")
    list_of_df.append(temp_df)
    
df = pd.concat(list_of_df, axis=0, ignore_index=True)

如果您需要添加名稱為.csv的列,請在循環內調用pandas.read_csv后包含以下行。

temp_df.insert(0, "filename", f"samp_{i}")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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