python3关闭csv文件_Python3读写csv文件

新手做机器学习,很多东西都得一点一点积累,第一步从读写csv数据文件开始,文件中包含列名。

1、读入csv文件

import csv

with open("filename.csv","r",encoding="utf-8") as csvfile:

reader = csv.reader(csvfile, delimiter=",")

user_id = []

date = []

####读取数据到list中

for col in reader:

user_id.append(col[0])

date.append(col[1])

将多列数据融合进array

####将多列数据放入array中

x = np.c_[user_id, date]

当然也可以把数据按纵向拼接,把多行数据拼在一起,用np.r_[x1, x2]

还有一种行堆叠方式np.row_stack((row,y))可以用来在数据输出前给array数据添加数据头

将数据写入csv文件

csvfile = open("savefile.csv", "w", newline = "")

writer = csv.writer(csvfile)

writer.writerows(output)

csvfile.close()

在这一步上我遇到了问题,在python3里直接写入时,生成的csv文件用excel打开可以看到每一行下面都多了一行空白行,网上搜了好久,有说因为需要把数据encode成bytes, 将open()中的‘w’改为‘wb’,但是似乎不适合python3,我修改后仍然不能正常工作。后来找到一个简单的办法,只要加入newline = ”即可,不需要修改打开方式。

顺便提醒不要忘记关掉csv文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值