步骤一:
读取csv文件,python实现的有以下几种方法:
1.利用csv库
import csv
with open('test.csv','r') as f:
f_csv = csv.reader(f)
headers = next(f_csv)
for row in f_csv:
print(row)
"""
利用csv库中的reader函数来读取文件对象
返回一个iterator,每一个iteration是csv文件的一行
而next函数则将一个iterator转化为列表形式。
值得注意的是:f_csv对象是需要I/O连接的,headers对象是一行一行迭代的,所以这两个对象只能在结构体里面使用
"""
2.直接用split函数分割数据
with open('test.csv','r') as f:
for line in f:
f_tsv=line.split(',')
print (f_tsv)
"""
这种方法的缺点是:当遇到字段中有,的时候,就会出错
"""3.pandas的read_csv函数
data=pd,read_csv('test.csv') print(data) #这种方法简单且方便
步骤二:
将每个小csv文件连接成大csv文件
方法一:
import csv data = [] with open('test.csv') as f: f_csv = csv.reader(f)
for row in f_csv: data.append(row) with open('test1.csv') as f: f_csv = csv.reader(f) for row in f_csv: data.append(row) with open('data.csv', 'w') as f: f_csv = csv.writer(f) f_csv.writerows(data) """ 同时打开两个文件,进行操作 将每个csv中的数据添加到一个list对象中即可完成连接 最后再用write函数即可将数据写入csv文件 """
方法二:data1 = pd.read_csv('test.csv') data2 = pd.read_csv('test1.csv') data = data1.append(data2) # data=pd.concat([data1,data2]) data.to_csv('data.csv') """ 两种方法连接两个csv 一是append方法,在数据一的后面加上数据二 二是concat方法,将两个数据集连接起来 """ 步骤三:
将csv转为tsvwith open('test.csv') as f:
data = f.read().replace(',', '\t')
with open('test.tsv','w') as f:
f.write(data)
"""
用replace方法将,替换成\t
然后在写入文件的时候,后缀名为tsv即可
"""
版权声明:本文为ximingren原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。