对NumPy数组进行比较和过滤
在这篇文章中,我们将看到如何对NumPy数组进行比较和过滤。
比较NumPy阵列:
- 大于(>)或numpy.generate()。
 - 小于(<)numpy.less()。
 - Equal(==) or numpy.equal()
 - 不等于(!=)或numpy.not_equal()。
 - 大于和等于(>=)。
 - 小于等于(<=)。
 
NumPy阵列比较的步骤:
第1步:首先在你的系统或环境中安装NumPy。通过使用以下命令。
pip install numpy(command prompt)
!pip install numpy(jupyter)
第2步:导入NumPy模块。
import numpy as np
第3步:使用NumPy数组方法创建一个元素数组。
np.array([elements])
第4步:现在使用比较运算符来比较NumPy数组。
示例 1:
- 导入NumPy模块。
 - 使用numpy.array()方法创建数组。
 - 现在用greater()方法比较两个数组。
 
# importing NumPy Module
import numpy as np 
  
# Creating Array
a = np.array([1,2,3,4]) 
b = np.array([3,8,5,6])
  
# Comparing two arrays
np.greater(a, b)
输出:
array([False, False, False, False])
示例 2:
- 导入NumPy模块。
 - 使用numpy.array()方法创建数组。
 - 现在用less()方法比较两个数组。
 
# Importing NumPy Module
import numpy as np
  
# Creating Array using NumPy
a = np.array([1, 2, 3, 4])
b = np.array([3, 8, 5, 6])
np.less(a, b)
输出:
array([ True,  True,  True,  True])
示例 3:
- 导入NumPy模块。
 - 使用numpy.array()方法创建数组。
 - 现在用equal()方法比较两个数组。
 
# Importing NumPy Module.
import numpy as np
  
# Create Arrays using np.array() Function.
a = np.array([1, 2, 3, 4])
b = np.array([3, 8, 5, 6])
  
# Compare a and b array elements
# if the elements in a and b are equal
# it returns True else returns False.
np.equal(a, b)
输出:
array([ False,  False,  False, False])
示例 4:
- 导入NumPy模块。
 - 使用numpy.array()方法创建数组。
 - 现在用not_equal()方法比较两个数组。
 
# Importing NumPy Module.
import numpy as np
  
# Create Arrays using np.array() Function.
a = np.array([1, 2, 3, 4])
b = np.array([3, 8, 5, 6])
  
# Compare a and b array elements if the
# elements in a and b are  not equal
# it returns True else returns False.
np.not_equal(a, b)
输出:
array([ True,  True,  True,  True])
示例 5:
- 导入NumPy模块。
 - 使用numpy.array()方法创建数组。
 - 现在用>=操作符比较两个数组。
 
# Importing NumPy Module.
import numpy as np
  
# Create Arrays using np.array()
# Function.
a = np.array([1, 2, 3, 4])
b = np.array([3, 8, 5, 6])
  
# it returns if elements in a  are
# greater than a equal to b
print(a >= b)
输出:
[False False False False]
示例 6:
- 导入NumPy模块。
 - 使用numpy.array()方法创建数组。
 - 现在用<=操作符比较两个数组。
 
# Importing NumPy Module.
import numpy as np
  
  
# Create Arrays using np.array()
# Function.
a = np.array([1, 2, 3, 4])
b = np.array([3, 8, 5, 6])
  
# it returns if elements in a  are less
# than a equal to b
print(a <= b)
输出:
[ True  True  True  True]
过滤NumPy数组:
筛选是指抽取满足我们所给条件的元素。例如,一个数组中的偶数元素,一个数组中大于10的元素,等等。
过滤NumPy数组的步骤:
- 导入NumPy模块。
 - 使用np.array()函数创建数组。
 - 写出过滤数组的任何条件。
 - 用该过滤函数创建一个新的数组。
 
注意:在过滤和比较中,都会给出布尔值作为输出。
示例 1:
- 导入NumPy模块。
 - 使用numpy.array()方法创建数组。
 - 现在取一个过滤阵列的条件。
 - 现在创建一个满足条件的新数组。
 
import numpy as np
  
  
a = np.array([1, 2, 3, 40, 50, 100,
              45, 87, 98])
  
# Taking a condition to filter the array
filter_ex = a < 16
  
# Creating new array using Condition.
new_arr = np.array([filter_ex])
  
# Printing new Array
print(*new_arr)
输出:
[False False False  True  True  True  True  True  True]
示例 2:
- 导入NumPy模块。
 - 使用numpy.array()方法创建数组。
 - 现在取一个过滤阵列的条件。
 - 现在创建一个满足条件的新数组。
 
# Importing  NumPy Module
import numpy as np
  
# Creating Array
a = np.array([1, 2, 3, 40, 50, 100, 
              45, 87, 98])
  
# Filtering Condition
filter2 = a % 2 == 0
even = np.array([filter2])
print(*even)
输出:
[False  True False  True  True  True False False  True]
极客教程