首页 >后端开发 >Python教程 >如何防止NumPy数组打印截断?

如何防止NumPy数组打印截断?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-29 19:01:11625浏览

How to prevent NumPy array printing truncation?

克服 NumPy 数组打印中的截断

打印 NumPy 数组时,经常会遇到截断的表示形式,从而模糊了数据的完整范围。这种截断可能会令人沮丧,特别是在处理大型或复杂的数组时。幸运的是,NumPy 为这个问题提供了解决方案。

要打印完整的 NumPy 数组,无论其大小如何,请使用 numpy.set_printoptions 函数。此函数允许您调整打印设置,包括截断数组的阈值。

import sys
import numpy

# Set the printing threshold to infinity
numpy.set_printoptions(threshold=sys.maxsize)

通过将阈值设置为 sys.maxsize,您可以有效地指示 NumPy 打印整个数组而不截断它。这可确保您可以查看完整数据,避免任何信息丢失。

假设您有一个包含 10,000 个元素的数组:

>> numpy.arange(10000)

截断的输出:

array([   0,    1,    2, ..., 9997, 9998, 9999])

设置阈值后的完整输出:

array([ 0,  1,  2, ..., 9997, 9998, 9999])

同样,对于多维数组,例如重塑为 250 行和 40 列的数组:

>> numpy.arange(10000).reshape(250, 40)

截断输出:

array([[   0,    1,    2, ...,   37,   38,   39],
       [  40,   41,   42, ...,   77,   78,   79],
       [  80,   81,   82, ...,  117,  118,  119],
       ..., 
       [9880, 9881, 9882, ..., 9917, 9918, 9919],
       [9920, 9921, 9922, ..., 9957, 9958, 9959],
       [9960, 9961, 9962, ..., 9997, 9998, 9999]])

设置阈值后的完整输出:

array([[ 0,  1,  2, ..., 37, 38, 39],
       [40, 41, 42, ..., 77, 78, 79],
       [80, 81, 82, ..., 117, 118, 119],
       ..., 
       [9880, 9881, 9882, ..., 9917, 9918, 9919],
       [9920, 9921, 9922, ..., 9957, 9958, 9959],
       [9960, 9961, 9962, ..., 9997, 9998, 9999]])

通过调整打印阈值,您可以轻松查看 NumPy 数组的全部内容,方便数据探索和分析。

以上是如何防止NumPy数组打印截断?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn