Numpy 对数组执行np.std时出错
这是我的代码,我试图计算一个导入列表的标准偏差,如下所示Numpy 对数组执行np.std时出错,numpy,python-3.5,Numpy,Python 3.5,这是我的代码,我试图计算一个导入列表的标准偏差,如下所示 b=[] #time=[] with open('nt.txt') as csvfile: data=csv.reader(csvfile,delimiter=('\t')) index=0 for line in data: b.append(line[1]) #out=line[0] #new=out.split(" ")
b=[]
#time=[]
with open('nt.txt') as csvfile:
data=csv.reader(csvfile,delimiter=('\t'))
index=0
for line in data:
b.append(line[1])
#out=line[0]
#new=out.split(" ")
#b.append(new[0])
#else:break
x=statistics.stdev(b)
print(x)
将b=['-0002549'、'-0002040'、'-0001530']
作为我的输出
我得到
raise TypeError(msg.format(type(x).__name__)) from None
TypeError: can't convert type 'str' to numerator/denominator
您必须设置numpy数组的类型,而不是列表的类型
您必须设置numpy数组的类型,而不是列表
,完成后,我得到了这个。。。results=np.array([[x],[b]])。astype(dtype='float64')value错误:无法将字符串转换为float:'-0002549',这是因为您使用逗号而不是句点作为小数点。你可以用这个建议来纠正这个问题:请考虑一下这个问题。results=np.array([[x],[b]])。astype(dtype='float64')value错误:无法将字符串转换为float:'-0002549',这是因为您使用逗号而不是句点作为小数点。你可以用这个建议来纠正这个问题:请考虑这个响应。我怀疑逗号是用于小数分隔符。我怎样才能解决这个问题……我没有数据要测试,但是这个链接提供了一个可能的解决方案,我改进了代码…我想。。。。现在我想计算标准偏差,但得到上面描述的错误。我怀疑是逗号用于小数分隔符。我如何解决这个问题……我没有数据可供测试,但这个链接提供了一个可能的解决方案,我改进了代码。。。。我想。。。。现在我想计算标准偏差,但得到的误差如上所述
results=np.array([[x],[b]]).astype(np.float32)