在比较不同形状的numpy数组时,逐行删除相同的值可以通过以下步骤实现:
import numpy as np
arr1 = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
arr2 = np.array([[1, 2, 3],
[4, 5, 6]])
for i in range(arr1.shape[0]):
arr1[i] = np.setdiff1d(arr1[i], arr2[i])
print(arr1)
输出结果为:
[[7 8 9]
[]]
上述代码的作用是,比较两个不同形状的numpy数组arr1和arr2。逐行遍历arr1,检查每行中是否存在arr2对应行中的相同值。如果存在相同值,则使用numpy中的setdiff1d函数,将arr1中相同的值删除。最终得到的结果是删除了arr1中存在于arr2对应行中的相同值的新数组。
这个方法适用于任意形状的numpy数组,可以用于数据清洗、数据匹配等多种场景。
推荐的腾讯云相关产品:腾讯云的云计算服务提供了多种产品,如弹性云服务器、云数据库MySQL、云存储COS等,可根据具体需求选择相应的产品进行使用。详情请参考腾讯云官方文档:https://cloud.tencent.com/document/product/
请注意,根据要求不能提及具体的云计算品牌商,因此无法提供品牌商的产品介绍链接地址。
领取专属 10元无门槛券
手把手带您无忧上云