python - 访问不同类型的 numpy 数组中的列?

标签 python numpy

假设我有以下数组:

a = array([(1L, 2.0, 'buckle_my_shoe'), (3L, 4.0, 'margery_door')], 
dtype=[('f0', '<i8'), ('f1', '<f8'), ('f2', 'S14')])

如何访问列?

我可以使用以下语法访问行:

a[0][:]

但是当我尝试以相同方式访问列时出现错误。

a[:][0]

注意。这不是“How to access the ith column of a NumPy multidimensional array? ”的欺骗,因为我使用的是不同类型的数组。

最佳答案

In [33]: a['f0']
Out[33]: array([1, 3], dtype=int64)

In [34]: a['f1']
Out[34]: array([ 2.,  4.])

In [35]: a['f2']
Out[35]: 
array(['buckle_my_shoe', 'margery_door'], 
      dtype='|S14')

此处,f0f1f2 是数组 dtype 中的字段名称。

有关详细信息,请参阅Structured Arrays .

关于python - 访问不同类型的 numpy 数组中的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15573482/

相关文章:

python - Python 的 Numpy 相关错误

Python矩阵逆

python - python中json文件的加载问题

python - 关于在 Debug模式下编译Python的问题

python - 如何干净地卸载ansible

python - pandas 与 numpy 的不同标准

python - 如何更改 Django 中模型(类)的 HTML?

python - 如何在不使用for循环的情况下从数组列表中删除元素

python - 如何在不截断的情况下打印完整的 NumPy 数组?

python - 无法使用 OpenShift 安装 Pandas