我们说我有以下数组 -
X = np.array([[0, 1,5], [3, 7,6], [11,3,2]])
然后我做 -
X[1,np.delete(range(3),0)]
哪个给出 -
array([7, 6])
基本上,我想留下 -
7, 6
以浮动形式(不是字符串)用逗号分隔,如果可能的话?
谢谢!
答案 0 :(得分:1)
尝试将其转换为列表:
>>> X[1,np.delete(range(3),0)].tolist()
[7, 6]
答案 1 :(得分:0)
您从2d数组开始,然后选择一个部分。结果是1d数组:
In [83]: X = np.array([[0, 1,5], [3, 7,6], [11,3,2]])
In [84]: X
Out[84]:
array([[ 0, 1, 5],
[ 3, 7, 6],
[11, 3, 2]])
In [85]: y = X[1,1:]
In [86]: y
Out[86]: array([7, 6])
可以以各种方式显示。默认数组str
显示使用括号而不使用逗号。 repr
显示包含array
名称
In [87]: str(y)
Out[87]: '[7 6]'
列表显示仍有括号:
In [88]: y.tolist()
Out[88]: [7, 6]
In [98]: tuple(y)
Out[98]: (7, 6)
我不知道任何内置结构显示为以逗号分隔的数字而没有某种括号。
但是如果你将每个元素转换成一个字符串,然后用,
加入它们就可以得到你想要的纯字符串:
In [89]: ', '.join([str(i) for i in y])
Out[89]: '7, 6'
我们也可以使用%
格式化格式化数组。这是np.savetxt
在将数组行写入文件时所执行的操作。
In [91]: '%d, %d'%tuple(y)
Out[91]: '7, 6'
In [97]: '{}, {}'.format(*y)
Out[97]: '7, 6'
所有这些的基础是两件事:
什么是对象 - 数组,列表,元组,字符串
如何显示该对象。所有对象都有str
方法和repr
显示方法。但总是,对象及其显示方法之间存在区别。不要把一个误认为另一个。