长numpy阵列不能完全打印?
-
13-10-2019 - |
题
我正在尝试打印两个1001x1数组的完整内容,但是Python只会给我截断的输出,类似的东西:
array([[5,45],
[1,23],
......,
[1,24],
[2,31]])
而不是完整的数组。
谁能给我解决如何获得完整的1001x1阵列的解决方案?
解决方案
我猜测您尝试了一个简单的语句:
print myarray
...而不是更明确的东西:
for each_item in myarray:
print each_item
... 甚至:
print ', '.join([str(x) for x in myarray])
您看到兴高的输出的原因大概是因为 numpy
实施 _str_
方法中的方法 array
试图给出数组的“重新呼吸”默认字符串表示的类。大概是假设很简单 print
语句将主要用于调试,记录或类似目的,并且将使用对数据的更明确的迭代来完成结果的结果或将结果报告到其他过程或存储中(如我所示)。
其他提示
请参阅该部分 打印阵列 在Numpy教程中:
如果阵列太大而无法打印,则Numpy会自动跳过阵列的中心部分,仅打印角:
>>> print(np.arange(10000)) [ 0 1 2 ..., 9997 9998 9999]
...
为了禁用此行为并强迫Numpy打印整个数组,您可以使用set_printoptions更改打印选项。
>>> np.set_printoptions(threshold=nan)
这 np.set_printoptions
功能是Numpy库的一部分。
不隶属于 StackOverflow