pandas读取csv文件和txt文件(利用pandas读写csv)
import pandas as pd
#任意的多组列表
a = [1,2,3]
b = [4,5,6]
#字典中的key值即为csv中列名
dataframe = pd.DataFrame({'a_name':a,'b_name':b})
#将DataFrame存储为csv,index表示是否显示行名,default=True
dataframe.to_csv("test.csv",index=False,sep=',')
具体结构如下:
a_name b_name
0 1 4
1 2 5
2 3 6
import pandas as pd
#括号中还可以添加其他参数
data = pd.read_csv('test.csv')
默认参数读取csv文件,会自动加上行索引,即使原数据集有行索引:
当设置参数header=None时,即指明原始文件数据没有列索引,这样read_csv为自动加上列索引,除非你给定列索引的名字。
import pandas as pd
#括号中还可以添加其他参数
data = pd.read_csv('test.csv',header=None,names=['a','b'])
header=None时,即指明原始文件数据没有列索引,这样read_csv为自动加上列索引,即0、1、2 ......,也可以设定索引名字names=['a','b'],具体结果如下图:
header=0时,表示文件第0行(即第一行)为列索引,这样加names会替换原来的列索引。
import pandas as pd
#括号中还可以添加其他参数
data = pd.read_csv('test.csv',header=0,names=['a','b'])
具体结果如下图:
csv包读写csv
写入csv,该包的writer写入类似writelines(),一行行写入
import csv
#python2可以用file替代open
with open("test.csv","w") as csvfile:
writer = csv.writer(csvfile)
#先写入columns_name
writer.writerow(["index","a_name","b_name"])
#写入多行用writerows
writer.writerows([[0,1,3],[1,2,3],[2,3,4]])
import csv
with open("test.csv","r") as csvfile:
reader = csv.reader(csvfile)
#这里不需要readlines
for line in reader:
print(line)
感谢大家的关注和支持!!!
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com