python - 将数组中的每个值复制为一个新数组

标签 python numpy numpy-ndarray

我有一个像这样的 numpy ndarray 输入

[[T, T, T, F],
  [F, F, T, F]]

我想将每个值复制为一个新数组,所以输出将是

[[[T,T], [T,T], [T,T], [F,F]]
  [[F,F], [F,F], [T,T], [F,F]]]

我该怎么做?提前谢谢你

最佳答案

一种方法是使用 np.dstack沿第三轴复制数组:

np.dstack([a, a])

array([[['T', 'T'],
        ['T', 'T'],
        ['T', 'T'],
        ['F', 'F']],

       [['F', 'F'],
        ['F', 'F'],
        ['T', 'T'],
        ['F', 'F']]], dtype='<U1')

设置:

T = 'T'
F = 'F'
a = np.array([[T, T, T, F],
              [F, F, T, F] ])

关于python - 将数组中的每个值复制为一个新数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56950411/

相关文章:

python - 为什么在使用可尾部 MotorCursor 并关闭 Motor 客户端连接时会出现被忽略的异常?

python - 从分类数据类型列中提取平均值

python - SymPy lambdify 引发 OverflowError : math range error

python - 无法修改 numpy 数组

python - 切片具有中心元素索引的子矩阵

python - 从 numpy 数组中采样固定长度的序列

写入文件时将 Python unicode 转换为 ASCII

python - 数组不会在 python 中分配超过 8 个字符

python - 如何使用 numpy/pandas 计算 "submatrix"条目的总和?

python - 将峰彼此等距分开