📜  如何将多个数据文件读入 Pandas?(1)

📅  最后修改于: 2023-12-03 15:24:44.764000             🧑  作者: Mango

如何将多个数据文件读入 Pandas?

在数据分析中,常常需要处理多个数据文件。Pandas是一种广泛使用的Python数据分析库,能够轻松地读取和处理多个数据文件。本文将介绍如何将多个数据文件读入Pandas。

1. 使用glob库读取多个数据文件

glob库是Python的一个文件名管理工具,可以通过通配符匹配来查找符合条件的文件。利用glob库可以轻松地读取多个数据文件,并将它们转换为Pandas DataFrame。

import glob
import pandas as pd

path = './data/*.csv'  # 匹配指定文件夹下的所有csv文件
files = glob.glob(path)

data = pd.DataFrame()
for file in files:
    df = pd.read_csv(file)
    data = pd.concat([data, df])

上述代码先使用glob库找到指定文件夹下所有的csv文件,并使用for循环和pd.concat()函数将它们合并成一个DataFrame。

2. 使用os库和Pandas读取多个数据文件

os库是Python的一个文件和目录访问库,可以获取文件和目录的信息,包括文件名、大小、创建时间等。利用os库和Pandas可以轻松读取多个数据文件,并将它们转换为Pandas DataFrame。

import os
import pandas as pd

path = './data/'
files = os.listdir(path)

data = pd.DataFrame()
for file in files:
    if file.endswith('.csv'):
        file_path = os.path.join(path, file)
        df = pd.read_csv(file_path)
        data = pd.concat([data, df])

上述代码使用os.listdir()函数获取指定文件夹下的所有文件名,并使用for循环和pd.concat()函数将所有的csv文件合并成一个DataFrame。

3. 使用列表推导式和Pandas读取多个数据文件

列表推导式是Python的一种简洁的语法,用于生成列表。利用列表推导式和Pandas可以轻松读取多个数据文件,并将它们转换为Pandas DataFrame。

import pandas as pd

path = './data/'
files = [file for file in os.listdir(path) if file.endswith('.csv')]

data = pd.concat([pd.read_csv(os.path.join(path, file)) for file in files])

上述代码使用列表推导式生成所有csv文件的文件名,并使用pd.concat()函数将它们合并成一个DataFrame。

综上,以上三种方法都可以轻松地读取多个数据文件,并将它们转换为Pandas DataFrame。选择使用哪种方法取决于个人需求和习惯。