直接读取单个csv文件通过pd.read_csv()函数直接在指定路径进行文件读取,需要利用Pandas包。
其中:
1、路径前的r表示路径符号不转义,window操作系统下不再用调整“\”为“\\”或“/”进行文件读取;
2、header=None表示读取数据没有表头;
3、names =[] 为表格生成表头(列索引),[]内为定义列名;
4、encoding='utf-8' 为编码方式,utf-8指中文。
import pandas as pd
data = pd.read_csv(r'E:\文件夹1\文件夹2\123.csv', header = None, names = ['列名'], encoding='utf-8')
批量读取csv的方法主要利用glob.glob()函数返回指定路径中所有文件详细路径的列表,主要需要利用glob和os包。
其中,
1、file_path参数表示需要读取多个csv文件的文件夹位置;
2、os.path.join() 作用是拼接()内部的参数,“*.csv”表示csv属性文件;
3、glob.glob()则返回所有file_path和csv文件拼接好的路径地址;
4、file.sort()表示对所有csv文件地址进行排序,对有序命名文件的读取时有帮助。
import pandas as pd
import glob
import os
file_path = r'E:\文件夹1\文件夹2' #文件夹位置
file = glob.glob(os.path.join(file_path, "*.csv")) #文件列表
file.sort() #文件列表按名称排序
得到结果示意:
>>> print(file)
['E:\\文件夹1\\文件夹2\\1.csv', 'E:\\文件夹1\\文件夹2\\2.csv', 'E:\\文件夹1\\文件夹2\\3.csv']
最后利用pd.read_csv()可以对列表file中第i个csv文件进行任意读取。
data = pd.read_csv(file[i])