首页 > 其他 > 详细

loadtxt()函数的糟心历程

时间:2019-02-23 16:44:47      阅读:234      评论:0      收藏:0      [点我收藏+]

原计划:导入一个csv文件,然后算出平均值

 

import numpy as np

 

c=np.loadtxt(‘d:\python36\data.csv‘, delimiter=‘,‘, usecols=(2,), unpack=True)

 

print ("median =", np.median(c))

 

---------------------------

 

报错:OSerror: d:\python36\data.csv not found

 

找了半天原因:原来是data.csv应该是data_1.csv

 

 

 

后来以为编码问题

 

import numpy as np

 

import codecs

 

myfile=‘d:\python36\data_1.csv‘

 

filecp = codecs.open(myfile, encoding=‘utf-8‘)

 

c=np.loadtxt(filecp, skiprows=2,dtype=int)

 

print ("median =", np.median(c))

 

---------------------------

 

报错:ValueError:  could not convert string to float:’12,1,2,12’

 

搞了半天,没找到原因

 

去掉dtype=int后,报错IndexError:list index out of range

 

 

最终:

 

import numpy as np

 

import codecs

 

myfile=‘d:\python36\data_1.csv‘

 

filecp = codecs.open(myfile, encoding=‘utf-8‘)

 

c=np.loadtxt(filecp, skiprows=2,delimiter=’,’, usecols=(2,),dtype=float)

 

print ("median =", np.median(c))

 

 

 

搞定,IndexError问题出在delimiter=’,’;而ValueError问题出在dtype=int和delimiter=’,’,因为没有delimiter=’,’隔开,就没法转换数据类型

 

loadtxt()函数的糟心历程

原文:https://www.cnblogs.com/master-road/p/10422384.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!