我有一个维度为numpy
的{{1}}数组M
和一个包含该数组单元格信息的数据框NxM
。
如果必须将值添加到tmp
的单元格中,我会这样做
M
但是我只想将值添加到其中M[tmp.a, tmp.b] = tmp1.n
的那些单元格中,例如
M < tmp.n
我以这种方式解决了
M[M[tmp.a, tmp.b] < tmp1.n] = tmp1.n
答案 0 :(得分:0)
如果我对您的理解正确,则可以执行以下操作:
M[tmp.a, tmp.b] = max(tmp1.n, M[tmp.a, tmp.b])
答案 1 :(得分:0)
# a logical (boolean) array
log = M < tmp.n
# apply it to source and target and use `+=` to add the values
M[log] += tmp.n[log]
如果数组的形状不同,则还可以选择特定的尺寸:
log = M[:, 0] < tmp.n
# apply it to source and target and use `+=` to add the values
M[log, 0] += tmp.n[log]