Str*_*247 5 python arrays numpy
我有三个列表要转换为一个列表.当我尝试以下时获得此错误
A = numpy.array(X,Y,Z,dtype=float)
ValueError: only 2 non-keyword arguments accepted
Run Code Online (Sandbox Code Playgroud)
我在这里没有看到任何说你只能给它两个论点的东西
http://docs.scipy.org/doc/numpy/reference/arrays.ndarray.html
这是代码
import numpy
from numpy import *
X = []
Y = []
Z = []
f = open(r'C:\My.txt')
f.readline()
for line in f:
if line != '':
line = line.strip()
columns = line.split()
x = columns[2]
y = columns[3]
z = columns[4]
X.append(x)
Y.append(y) #appends data in list
Z.append(z)
A = numpy.array(X,Y,Z,dtype=float)
A.shape(3,3)
print(A)
Run Code Online (Sandbox Code Playgroud)
谢谢你
尝试将三个列表作为元组传递:
A = numpy.array((X, Y, Z), dtype=float)
Run Code Online (Sandbox Code Playgroud)
在numpy.array
文档中签名numpy.array
是
numpy.array(object,dtype = None,copy = True,order = None,subok = False,ndmin = 0,maskna = None,ownmaskna = False)
即单个参数object
是变成ndarray的,每个其他参数必须是一个关键字参数(因此你得到的错误信息),可用于自定义数组的创建.
编辑响应Surfcast23的评论,在IDE中我尝试了以下内容:
>>> import numpy
>>> x = [0, 0, 0, 0]
>>> y = [3, 4, 4, 3]
>>> z = [3, 4, 3, 4]
>>> A = numpy.array((x, y, z), dtype=float)
>>> A
array([[ 0., 0., 0., 0.],
[ 3., 4., 4., 3.],
[ 3., 4., 3., 4.]])
>>> A.shape
(3L, 4L)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
18433 次 |
最近记录: |