python利用numpy模块读取csv文件

numpy.loadtxt()方法

先来看一下示例CSV数据:
X,Y,NAME,CLASS,AQI
120.7512427,30.75084798,嘉兴市,0XFF83,24
120.0830671,30.89524644,湖州市,0XFF83,80
120.574379,30.00700998,绍兴市,0XFF83,140
122.202972,29.98754304,舟山市,0XFF83,165
121.546246,29.87620299,宁波市,0XFF83,86
119.642848,29.08127199,金华市,0XFF83,184
118.869413,28.93892703,衢州市,0XFF83,72
121.416636,28.65889302,台州市,0XFF83,38
119.912514,28.455276,丽水市,0XFF83,49
120.695457,27.99819198,温州市,0XFF83,127
103.71468,27.341637,昭通市,0XFF83,23

简单读取

# -*- coding=utf-8 -*-
import numpy as np
import csv
p = r'D:\Test\web\ol4test\data\city_aic.csv'
with open(p,encoding = 'utf-8') as f:
    data = np.loadtxt(f,delimiter = ",")
    print(data[:5])

这样直接读取的结果是,报错: ValueError: could not convert string to float: ‘X’

字符串处理-str参数

原因是,默认情况下,数据被认为是float类型,因此,在上面读取csv文件第1行时,遇到’X’,尝试进行数据类型转换,转换失败报错。
经查可以使用str参数,让方法读取数据时,支持str类型。

with open(p,encoding = 'utf-8') as f:
    data = np.loadtxt(f,str,delimiter = ",")
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值