📅  最后修改于: 2023-12-03 15:22:19.807000             🧑  作者: Mango
在数据处理和分析中,CSV格式是经常使用的一种数据格式。然而,当我们需要处理多个CSV文件时,手动去一个一个查找可能会很费时费力。因此,编写Python脚本来自动化该过程可以帮助我们更高效地处理数据。
首先,我们需要使用os
模块提供的listdir
函数获取指定目录下的所有文件和文件夹的名称。然后,使用列表推导式将所有以.csv
结尾的文件名称保存到一个列表中。
import os
path = './data' # 指定目标目录路径
csv_files = [f for f in os.listdir(path) if f.endswith('.csv')]
print(csv_files)
上述代码中,path
指定了我们所需查找的目录路径,os.listdir
函数会返回指定目录下所有文件和文件夹的名称,我们使用列表推导式遍历所有的文件名,并筛选出以.csv
结尾的文件。最后,获得了所有CSV文件的名称列表。
另外一个获取所有CSV文件的方法是使用glob
模块。glob
模块提供了一种用于匹配文件路径的函数,可以非常方便地获取指定目录下的所有CSV文件路径。
import glob
path = './data' # 指定目标目录路径
csv_files = glob.glob(os.path.join(path, '*.csv'))
print(csv_files)
上述代码中,path
同样指定了我们所需查找的目录路径,os.path.join
函数用于将目标文件夹路径和匹配规则*.csv
连接成要搜索的文件路径。最后,glob
函数返回所有匹配到的文件路径的列表,我们获得了所有CSV文件的路径列表。
我们已经成功获取了所有CSV文件的路径,下一步就是使用pandas
模块来读取其中的数据。
import pandas as pd
path = './data' # 指定目标目录路径
csv_files = glob.glob(os.path.join(path, '*.csv'))
for file in csv_files:
df = pd.read_csv(file)
print(df.head())
上述代码中,我们遍历所有CSV文件的路径列表,使用pd.read_csv
函数读取每个文件的数据,并返回Dataframe格式。我们可以根据具体需要对Dataframe数据进一步处理,比如输出前几行数据、统计数据信息等。
以上就是使用Python从目录中获取所有CSV文件的方法,希望能够帮助大家更高效地处理数据。