Python Numpy ValueError: data type must provide an itemsize

天朝网络锁国,百度找了半个小时找不出来原因,只能谷歌

谷歌第一条就是,顿时感觉幸福感来的太突然

原因是输入的矩阵均是字符串(从文件里读的)

那么就需要批量转数组,一行一行的转。

下面是我的代码:

rownum = 0
f = open(train_Y_path)
for line in f.readlines():
    train_Y_matrix[rownum] = map(float,line.strip(‘\n ‘).split(‘ ‘))
    rownum += 1
print train_Y_matrix

其中将每一行的float切分 返回string的数组后再转化为float

这么做有个缺点,是返回的是list,针对二维数组初始化是用的

train_Y_matrix = [[0 for col in range(n_outs)] for row in range(train_rows)]

这种方法而写的。

那么我们要的是矩阵运算,numpy里面的narray提供了良好的封装

我们应该这么写

train_X_matrix = numpy.empty((train_rows,n_ins),numpy.float64)
for line in f.readlines():
    train_X_matrix[rownum] = numpy.asarray(line.strip(‘\n ‘).split(‘ ‘), dtype=float)
    rownum += 1

这样就可以按照numpy array的方式来操作这个数组了

Python Numpy ValueError: data type must provide an itemsize

时间: 2025-01-04 05:59:53

Python Numpy ValueError: data type must provide an itemsize的相关文章

Python报错:TypeError: data type not understood

K-Means聚类算法 def randCent(dataSet, k): m, n = dataSet.shape # numpy中的shape函数的返回一个矩阵的规模,即是几行几列 centrodids = np.zeros(k, n) for i in range(k): index = int(np.random.uniform(0, m)) # centrodids[i, :] = dataSet[index, :] return centrodids 报错TypeError: dat

Python NumPy学习总结

一.NumPy简介 其官网是:http://www.numpy.org/ NumPy是Python语言的一个扩充程序库.支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库.Numpy内部解除了Python的GIL(全局解释器锁),运行效率极好,是大量机器学习框架的基础库! 关于GIL请参考博客:http://www.cnblogs.com/wj-1314/p/9056555.html NumPy的全名为Numeric Python,是一个开源的Python科学计算库,它包括

Seven Python Tools All Data Scientists Should Know How to Use

Seven Python Tools All Data Scientists Should Know How to Use If you’re an aspiring data scientist, you’re inquisitive – always exploring, learning, and asking questions. Online tutorials and videos can help you prepare you for your first role, but t

python numpy教程

python numpy教程 2014-08-10 22:21:56 分类: Python/Ruby 先决条件 在阅读这个教程之前,你多少需要知道点python.如果你想重新回忆下,请看看Python Tutorial. 如果你想要运行教程中的示例,你至少需要在你的电脑上安装了以下一些软件: Python NumPy 这些是可能对你有帮助的: ipython是一个净强化的交互Python Shell,对探索NumPy的特性非常方便. matplotlib将允许你绘图 Scipy在NumPy的基础

诡异错误二:TypeError: data type not understood

如何使用Python产生一个数组,数组的长度为1024,数组的元素全为0? 很简单啊, 使用zeros(1024) 即可实现! 如何产生一个2×1024的全0矩阵呢?是否是zeros(2,1024) ? 若是上述这种写法就会出现 TypeError: data type not understood  这种错误: 正确的写法是 zeros((2,1024)),python的二维数据表示要用二层括号来进行表示. 三维数据是否使用三层括号?试一试,果然可以正确输出!试猜一猜, 下述三层括号中的数字分

Python numpy数组扩展效率问题

Numpy库的ndarray数组可以方便地进行各种多维数据处理工作 可是它最大的缺点就是不可动态扩展--"NumPy的数组没有这种动态改变大小的功能,numpy.append()函数每次都会重新分配整个数组,并把原来的数组复制到新数组中."(引用自http://blog.chinaunix.net/uid-23100982-id-3164530.html) 场景: 今天用ndarray处理 42000 条数据时,就遇到了数组扩展的效率问题 文件名:train.csv(后附下载) 文件大

Recurrent Neural Networks Tutorial, Part 2 – Implementing a RNN with Python, Numpy and Theano

转载 - Recurrent Neural Networks Tutorial, Part 2 – Implementing a RNN with Python, Numpy and Theano This the second part of the Recurrent Neural Network Tutorial. The first part is here. Code to follow along is on Github. In this part we will implemen

Python Numpy库函数使用

NumPy的操作介绍 import numpy as np print "Generate 1*10 matrix" a=np.arange(1,11)**2 b=np.arange(1,11)**3 c=a+b print c print c.shape print "create a 2*10 matrix" m=np.array([np.arange(10),np.arange(10)]) #create a 2*10 matrix print m print

Python+numpy(3).md

Python numpy 1.1Python科学计算的介绍 参考资料: http://old.sebug.net/paper/books/scipydoc/numpy_intro.html http://www.numpy.org/ numpy是一个与数学模型构建.定量分析方法以及利用计算机分析和解决科学问题相关领域. 常用库: Numpy Scipy Pandas matplotlib 1.2 Numpy之ndarray对象 标准安装的Python中用列表(list)保存一组值,可以用来当作数