从具有条件 Python numpy 的数组中删除元素



>我有 3 个大小相同的数组 a 和 b

a= [1,20,0,3,9,9,9,55]
b= [1,5,6,9,9,9,9,55]

我需要从 A 中删除元素 0,并删除数组 B 中同一索引中的元素,如下所示:

    a= [1,20,3,9,9,9,55]
    b= [1,5,9,9,9,9,55]

import numpy as np
import math
a = np.array([1, 0,3])
b = np.array([5, 6,9])

c= np.vstack((a,b)).T
c= c[(c[:,0]<>0)]
k= c[:,0]
f= c[:,1]
r= math.sqrt(np.mean(np.power(((k - f) / k),2)))
r

我的代码正在工作,但我不喜欢它,你还有其他主张吗?

如果你有 a、b、c 作为 numpy 数组

valid_idx = (a != 0)
b = b[valid_idx]
c = c[valid_idx]

相关内容

  • 没有找到相关文章

最新更新