black flat screen computer monitor

Python學習筆記: 批次讀取csv檔案,彙整成一個csv檔案

import glob
import pandas as pd
import numpy as np

# 亂數製作5個2列8欄之csv檔案
for i in range(1, 6):
    df_temp = pd.DataFrame(np.random.rand(2, 8), columns=list('abcdefgh'))
    df_temp.to_csv(('df_' + str(i) + '.csv'), index=False)
# 查詢目錄下所有的csv檔案
files = glob.glob('*.csv')
print(len(files))
files

5
[‘df_1.csv’, ‘df_2.csv’, ‘df_3.csv’, ‘df_4.csv’, ‘df_5.csv’]

# 第一種方法
df = pd.concat(
    map(pd.read_csv, files), ignore_index=True)
df
# 第二種方法
df_from_each_file = (pd.read_csv(f) for f in files)
df = pd.concat(df_from_each_file, ignore_index=True)
df

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *