【问题标题】:How can I generate an array based on the grouped values of another array in Numpy? [duplicate]如何根据 Numpy 中另一个数组的分组值生成一个数组? [复制]
【发布时间】:2020-12-05 18:11:24
【问题描述】:

假设我有以下数组:

`Z = [1,2,3,4,5,6,7,8,9,10,11,12,13,14]`

我想生成一个如下所示的数组:

R = [[1,2,3,4], [2,3,4,5], [3,4,5,6], ..., [11,12,13,14]]

如何用 NumPy 做到这一点?

【问题讨论】:

    标签: python numpy numpy-ndarray


    【解决方案1】:

    这个怎么样?

    from numpy.lib import stride_tricks
    Z = np.arange(1,15,dtype=np.uint32)
    R = stride_tricks.as_strided(Z,(11,4),(4,4))
    print(R)
    

    输出:

    [[ 1  2  3  4]
     [ 2  3  4  5]
     [ 3  4  5  6]
     [ 4  5  6  7]
     [ 5  6  7  8]
     [ 6  7  8  9]
     [ 7  8  9 10]
     [ 8  9 10 11]
     [ 9 10 11 12]
     [10 11 12 13]
     [11 12 13 14]]
    

    正如navneethc 正确指出的那样,此功能应与caution. 一起使用

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-03
    • 1970-01-01
    • 2018-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-13
    相关资源
    最近更新 更多