【问题标题】:python: How do I expand a numpy array with adjacent duplicate columns?python:如何扩展具有相邻重复列的 numpy 数组?
【发布时间】:2015-08-05 14:58:57
【问题描述】:

我想要实现的是我有一个这样的矩阵:

axy
axy
axy
axy

我想扩展该矩阵,使其变为:

aaaxxxyyy
aaaxxxyyy
aaaxxxyyy
aaaxxxyyy

有没有可以用来轻松管理这种转换的功能?我想使用一种更好的方法,而不是单独平铺每一列并将它们附加回来。

提前致谢。

【问题讨论】:

  • 你想改变矩阵还是直接打印?
  • 只是为了一些矩阵运算与另一个矩阵运算,我不再需要那个扩展版本。

标签: python arrays numpy matrix


【解决方案1】:

你可以使用np.repeat:

>>> import numpy as np
>>> a = np.arange(9).reshape(3,3)
>>> a
array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])
>>> b = np.repeat(a, 3, axis=1) # array, times, axis
>>> b
array([[0, 0, 0, 1, 1, 1, 2, 2, 2],
       [3, 3, 3, 4, 4, 4, 5, 5, 5],
       [6, 6, 6, 7, 7, 7, 8, 8, 8]])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-03
    • 2020-12-13
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多