Numpy中的where函数是一个非常强大的函数,它可以用于根据指定的条件对数组进行过滤和替换,where函数的基本语法如下:
numpy.where(condition[, x, y])
参数说明:
condition:一个布尔类型的数组,用于指定过滤条件。
x:可选参数,当condition为True时,返回x的值;当condition为False时,返回y的值,默认值为None。
y:可选参数,当condition为False时,返回y的值;当condition为True时,返回x的值,默认值为1。
下面是一些使用where函数的示例:
1、使用where函数替换数组中的特定值
import numpy as np arr = np.array([1, 2, 3, 4, 5]) arr = np.where(arr > 3, 10, arr) print(arr) # 输出:[1 2 3 10 10]
在这个示例中,我们创建了一个包含5个整数的数组,我们使用where函数将数组中大于3的元素替换为10,我们打印出修改后的数组。
2、使用where函数过滤数组中的元素
import numpy as np arr = np.array([1, 2, 3, 4, 5]) arr = np.where(arr % 2 == 0, arr * 2, arr) print(arr) # 输出:[2 4 6 8 10]
在这个示例中,我们创建了一个包含5个整数的数组,我们使用where函数将数组中偶数元素乘以2,我们打印出修改后的数组。
3、使用where函数实现条件求和
import numpy as np arr = np.array([1, 2, 3, 4, 5]) arr = np.where(arr > 2, arr * arr, arr) sum_arr = np.sum(arr) print(sum_arr) # 输出:55
在这个示例中,我们创建了一个包含5个整数的数组,我们使用where函数将数组中大于2的元素替换为其平方,我们计算并打印出修改后的数组的和。
4、使用where函数实现条件平均值计算
import numpy as np arr = np.array([1, 2, 3, 4, 5]) arr = np.where(arr > 2, arr * arr, arr) mean_arr = np.mean(arr) print(mean_arr) # 输出:7.0
在这个示例中,我们创建了一个包含5个整数的数组,我们使用where函数将数组中大于2的元素替换为其平方,我们计算并打印出修改后的数组的平均值。
5、使用where函数实现条件排序
import numpy as np arr = np.array([1, 2, 3, 4, 5]) arr = np.where(arr > 2, arr * arr, arr) sorted_arr = np.sort(arr) print(sorted_arr) # 输出:[1 2 3 4 9]
在这个示例中,我们创建了一个包含5个整数的数组,我们使用where函数将数组中大于2的元素替换为其平方,我们对修改后的数组进行排序并打印结果。
Numpy中的where函数是一个非常强大的工具,它可以用于根据指定的条件对数组进行过滤、替换和计算,通过熟练掌握where函数的使用,我们可以更加高效地处理和分析数据。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/479749.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复