为什么纽比ndarray.形状给(),不管多大ndarray.tofile文件将数据写入fi

2024-10-03 19:28:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个前同事的.npz文件,需要对它进行头尾分析。很遗憾地说,我是Python的新成员,现在很难受。我尝试的第一件事是用

>>> import numpy as np
>>> data = np.load("abc.npz")

现在我知道了,在.npz中有一个“records”对象,所以我去

^{pr2}$

因为我还不知道如何利用这些数据,所以我去了

>>> recdata.shape
()

以及

>>> recdata.dtype
dtype('O')

去看形状,但是什么都没有。。。但是

>>> recdata.tofile('data.out',",")

给我一个人类可读的文件,一个例子

    {'30': {'caseinfo': {'nerve01 left': 2512, 'nerve02 right': 1824, 
'nerve02 left': 2458, 'nerve03 left': 8585, 'nerve01 right': 2206, 'nerve03 right': 4588}, 
'data': {'ps': array([  422,    39,    37,    35,    34,    36,    38,    39,    39,

。。。在

468,   461,   449,   432,   414,   408,   410,   408], dtype=int16), 'pout': array([-28, -12, -10, ...,   7,   0,   7], dtype=int16), 
'Q': array([ 2885,  2933,  2933,  2934,  2933,  2933,  2933,  2933,  2936,
    2941,  2953,  2970,  3021,  3095,  3207,  3368,  3525,  3671,

。。。等等。有人能帮我理解这里发生了什么事吗?我猜这不是一个数组,而是几个数组。还是这些都是单独的维度保存和命名?在


Tags: 文件rightdatanp数组arrayleftnpz
1条回答
网友
1楼 · 发布于 2024-10-03 19:28:19

一个'O'dtype(或等效的object)就是Python对象。在

有一个Python字典的零维单值数组:

numpy.array({}, dtype=object)
#>>> array({}, dtype=object)

numpy.array({}, dtype=object).shape
#>>> ()

以及

^{pr2}$

只需给出一个包含“{}”的文件,正如您所期望的那样。在

相关问题 更多 >