查找NumPy数组中的最大和最小元素

查找NumPy数组中的最大和最小元素

一个数组可以被认为是一个具有相同类型元素的容器。Python有一个名为array的数组模块。我们可以简单地导入该模块并创建我们的数组。但是这个模块有一些缺点。主要的缺点是我们不能创建一个多维数组。而且数据类型必须是相同的。

为了克服这些问题,我们使用了一个名为NumPy的第三方模块。使用NumPy,我们可以创建多维数组,而且还可以使用不同的数据类型。

注意:NumPy在默认情况下并不与python一起出现。因此,我们必须使用pip来安装它。要安装该模块,请在终端运行给定的命令。

pip install numpy

现在让我们用NumPy创建一个数组。为了做到这一点,我们需要导入该模块。在这里,我们正在导入该模块。

import numpy

使用上述命令,你可以导入该模块。

例子1:现在尝试创建一个单维数组。

arr = numpy.array([1, 2, 3, 4, 5])

在这里,我们创建了一个单维的NumPy整数阵列。现在试着找到最大的元素。要做到这一点,我们必须使用numpy.max(“array name”)函数。

语法:

numpy.max(arr)

为了找到最小的元素,使用numpy.min(“array name”)函数。

语法:

numpy.min(arr)

代码:

# import numpy library
import numpy
 
# creating a numpy array of integers
arr = numpy.array([1, 5, 4, 8, 3, 7])
 
# finding the maximum and
# minimum element in the array
max_element = numpy.max(arr)
min_element = numpy.min(arr)
 
# printing the result
print('maximum element in the array is: ',
      max_element)
print('minimum element in the array is: ',
      min_element)

输出:

maximum element in the array is:  8 
minimum element in the array is:  1

注意:你必须使用数字(int或float),你不能使用字符串。

例子2:现在,让我们创建一个二维的NumPy数组。

arr = numpy.array([11, 5, 7],
        [4, 5, 16],
        [7, 81, 16]]

现在使用numpy.max()和numpy.min()函数,我们可以找到最大和最小元素。
在这里,我们从整个数组中得到最大值和最小值。

代码:

# import numpy library
import numpy
 
# creating a two dimensional
# numpy array of integers
arr = numpy.array([[11, 2, 3],
                     [4, 5, 16],
                      [7, 81, 22]])
 
# finding the maximum and
# minimum element in the array
max_element = numpy.max(arr)
min_element = numpy.min(arr)
 
# printing the result
print('maximum element in the array is:',
      max_element)
print('minimum element in the array is:',
      min_element)

输出:

maximum element in the array is: 81
minimum element in the array is: 2

例3:现在,如果我们想从行或列中找到最大或最小值,那么我们必须加上01。看看它是如何工作的。

maximum_element = numpy.max(arr, 0)
maximum_element = numpy.max(arr, 1)

如果我们使用0,它将给我们一个包含每一列的最大值或最小值的列表。在这里,我们将得到一个像[11 81 22]这样的列表,其中有每一列的所有最大数字。

如果我们用1而不是0,将得到一个类似[11 16 81]的列表,其中包含每一行的最大数字。

代码:

# import numpy library
import numpy
 
# creating a two dimensional
# numpy array of integers
arr = numpy.array([[11, 2, 3],
                     [4, 5, 16],
                      [7, 81, 22]])
 
# finding the maximum and
# minimum element in the array
max_element_column = numpy.max(arr, 0)
max_element_row = numpy.max(arr, 1)
 
min_element_column = numpy.amin(arr, 0)
min_element_row = numpy.amin(arr, 1)
 
# printing the result
print('maximum elements in the columns of the array is:',
      max_element_column)
 
print('maximum elements in the rows of the array is:',
      max_element_row)
 
print('minimum elements in the columns of the array is:',
      min_element_column)
 
print('minimum elements in the rows of the array is:',
      min_element_row)

输出:

maximum elements in the columns of the array is: [11 81 22]
maximum elements in the rows of the array is: [11 16 81]
minimum elements in the columns of the array is: [4 2 3]
minimum elements in the rows of the array is: [2 4 7]

例子4:如果我们有两个相同形状的NumPy数组,我们可以找到最大或最小的元素。对于这个步骤,我们必须使用numpy.maximum(array1, array2)函数。它将返回一个包含每一列的最大值的列表。

代码:

# importing numpy library
import numpy
 
# creating two single dimensional array
a = numpy.array([1, 4, 6, 8, 9])
b = numpy.array([5, 7, 3, 9, 22])
 
# print maximum value
print(numpy.maximum(a, b))

输出:

[ 5  7  6  9 22]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Numpy教程