【问题标题】:Add elements of a list to all elements in certain columns将列表的元素添加到某些列中的所有元素
【发布时间】:2020-06-08 08:37:30
【问题描述】:

这是我的“问题”: 给定一个 numpy 数组为

array([[4, 3, 5, 1],
       [2, 3, 3, 4],
       [4, 2, 2, 7]])

我现在想做的是使用值列表

values = [3, 2]

并将它们添加到某些列的所有元素中,例如第 2 列和第 3 列导致

new_array([[4,6,7,1],
           [2,6,5,4],
           [4,5,4,7]])

如何做到这一点?

【问题讨论】:

    标签: python arrays list numpy


    【解决方案1】:
    a = np.array([[4, 3, 5, 1],
           [2, 3, 3, 4],
           [4, 2, 2, 7]])
    
    values = [3, 2]
    
    a[:,(1,2)] += values
    
    print(a)
    

    打印:

    [[4 6 7 1]
     [2 6 5 4]
     [4 5 4 7]]
    

    【讨论】:

    • 太棒了。谢谢你。我看到你使用了一个元组。如果我有一个包含 n-1 个值的列表而我的数组有 n 列怎么办?是否可以通过括号中的逗号添加 x,y,z?
    • @Dorian,“只需在括号中通过逗号添加 x,y,z”是什么意思?
    • a[:,(1,2,3,4,...)] - 所以添加超过 2 个列表的值。这可能吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-02
    • 2019-12-26
    • 2020-10-14
    • 1970-01-01
    • 2014-06-16
    相关资源
    最近更新 更多