我有一个对象 dtype='<U77'类型,由一串数字组成,以空格分隔:
array('[ 0.20988965 0.05172284 -0.13468404 ... 2.06070718 -0.6160391\n 3. ]',
dtype='<U77')
如何将其转换为 numpy 数组?
请您参考如下方法:
即使你想做一些笨拙的字符串解析来尝试修复这个对象,你也做不到。您已经丢失了几乎所有原始数据,并且无法仅通过查看字符串来找回它。
看到中间的 ... 了吗?这就是当您打印 一个大到足以触发汇总的数组时发生的情况:
>>> print(numpy.arange(1001))
[ 0 1 2 ... 998 999 1000]
看起来您打印了一个大数组,然后对生成的字符串调用了array。 NumPy 不是为 print 可逆而设计的,即使在它是可逆的情况下,在打印输出上调用 array 也不是你逆转它的方式.
您需要重做最初生成数组的计算,并选择一种更好的方法来保存结果,例如 numpy.save。
