python中常见csv文件读取方法比较

示例数据集:UCI的电离层(Ionosphere)

要实现的数据集的读取功能:
该数据集共有351行,每行有35个值,前34个为我们要的数据集,最后一个值是’g’或者’b’,表示数据的好坏,我们的任务就是在这个文本数据的前34列分出来,得到我们要的数据data_set(数组类型,元素为float),最后一列分出来,作为我们的标签data_label(布尔数组类型)
实现这个功能有以下几种方法

方法一: open函数

代码如下:

data_file='ionosphere.data'
data_set=np.zeros((351,34),dtype='float')
data_label=np.zeros((351,),dtype='bool')
fr=open(data_file)
array_of_line=fr.readlines()#得到文本的数据数组
number_of_line=len(array_of_line)#得到文本行数
for line in array_of_line:
    list_from_line=line.split(',')
    datastr=list_from_line[:-1]#这里得到的是字符串类型,而非浮点型
    data=float(datastr)#转化为浮点型
fr.close()#关闭文档

这个方法要注意的是:
(1)文件的打开和关闭需要我们处理,比较麻烦
(2)从文本中直接读到的序列是字符串,而非浮点型(虽然文本表面上看起来是浮点型)ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值