【问题标题】:What is dtype with more than one element in ndarray of numpy?numpy的ndarray中有多个元素的dtype是什么?
【发布时间】:2018-07-12 18:04:46
【问题描述】:
 x = np.array([(1,2),(3,4)],dtype=[('a','<i4'),('b','<i4')])

为什么我们在 ndarray 中使用具有多个元素的 dtype,它有什么用处?我们如何解释这个?

【问题讨论】:

  • 查看structured arrays上的文档
  • 这种dtype 在字段 dtype 不同时最有用,例如,来自标签列的字符串、整数和其他浮点数。它在加载csv 文件时最常出现。 stackoverflow.com/questions/51291797/… 是一个希望在同一个数组中同时包含字符串和整数的示例。

标签: python numpy


【解决方案1】:

首先,你应该注意到这个数组只有一个维度,由 dtype 表示

('a','<i4'),('b','<i4')

我喜欢思考这个问题的方式是,我们通过将其他 dtype 连接在一起来创建一个 dtype。我们将每对元组视为数组的一个元素,每个元组的每个元素都有单独的规范。

换句话说,dtype 实际上只是表示元素的结构。

要了解更多信息,请参阅this

【讨论】:

  • 另外,我们应该注意术语:concatenate 是具有特定含义的 NumPy 函数的名称。没有真正的组合,我什至不确定数据是否存储在此处的连续内存块中。
  • 哦,我知道它没有被串联哈哈。然而,这不是重点。我想我以相当普遍的口语方式使用它,所以我认为这不是问题。如果我指的是 np.concatenate,我会这么说
猜你喜欢
  • 1970-01-01
  • 2019-06-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-19
  • 2022-11-17
  • 2016-10-26
  • 1970-01-01
相关资源
最近更新 更多