如何在python中从numpy数组中选择元素?-kb88凯时官网登录

时间:2023-08-30
阅读:

python 中的 numpy 数组

顾名思义,numpy 数组是 numpy 库的中心数据结构。该库的名称是“numeric python”或“numerical python”的缩写。

换句话说,numpy 是一个 python 库,是 python 科学计算的基础。其中一个工具是高性能多维数组对象,它是一种用于高效数组和矩阵计算的强大数据结构。

 

我们可以一次从 numpy 数组中选择一个元素或一个子数组。现在我们看到以下从 numpy 数组中选择元素的方法。

  • 选择单个 numpy 数组元素
  • 使用切片从 numpy 数组中选择子数组
  • 仅通过给出停止值来选择/访问子数组
  • 仅通过给出起始值来选择/访问子数组

方法 1 - 选择单个 numpy 数组元素

这些 ndarray 的每个元素都可以通过它们的索引号来访问。

算法(步骤)

以下是执行所需任务所需遵循的算法/步骤 -

  • 使用 import 关键字,导入带有别名 (np) 的 numpy 模块。

  • 使用numpy.array()函数(返回一个ndarray。ndarray是满足给定要求的数组对象),通过传递一维数组来创建numpy数组数组作为它的参数。

  • 使用正索引访问索引 1 处的 numpy 数组元素并打印 它。

  • use negative indexing to access the numpy array element at index -1 i.e the last element of an array and print 它。

negative indexing():
python allows for "indexing from the end," i.e., negative indexing.
this means that the last value in a sequence has an index of -1, the
second last has an index of -2, and so on.
when you want to pick values from the end (right side) of an iterable, you
can utilize negative indexing to your benefit.

示例

以下程序使用索引号从输入 numpy 数组返回指定索引处的元素 -

 

# importing numpy module with an alias name
import numpy as np
# creating a 1-dimensional numpy array
inputarray = np.array([4, 5, 1, 2, 8])
# printing the array element at index 1 (positive indexing)
print("the input array = ",inputarray)
print("numpy array element at index 1:", inputarray[1])
# printing the array element at index -1 i.e last element (negative indexing)
print("numpy array element at index -1(last element):", inputarray[-1])

输出

执行时,上述程序将生成以下输出 -

the input array =  [4 5 1 2 8]
numpy array element at index 1: 5
numpy array element at index -1(last element): 8

方法 2 - 使用切片从 numpy 数组中选择子数组

为了获得子数组,我们用切片代替元素索引。

语法

numpyarray[start:stop]

其中,start、stop分别是子数组的第一个和最后一个索引。

算法(步骤)

以下是执行所需任务所需遵循的算法/步骤 -

  • 使用numpy.array()函数(返回一个ndarray。ndarray是满足给定要求的数组对象),通过传递一维数组来创建numpy数组数组作为它的参数。

  • 通过给出起始值和终止值来访问从索引 2 到 5(不包括)的子数组 using slicing and printing 它。

示例

以下程序通过给出开始值和停止值,使用切片从输入 numpy 数组返回子数组 -

 

# importing numpy module with an alias name
import numpy as np
# creating a 1-dimensional numpy array
inputarray = np.array([4, 5, 1, 2, 8, 9, 7])
print("input array =",inputarray)
# printing the sub-array from index 2 to 5(excluded) by giving start, stop values
print("the sub-array from index 2 to 5(excluded)=", inputarray[2:5])

输出

执行时,上述程序将生成以下输出 -

input array = [4 5 1 2 8 9 7]
the sub-array from index 2 to 5(excluded)= [1 2 8]

方法 3 - 通过仅给出停止值来选择/访问子数组

通过将起始索引留空,您可以从第一个元素开始对子数组进行切片。

默认起始值​​为0

示例

以下程序返回输入 numpy 数组中从索引 0(默认)到给定停止值的子数组 -

 

# importing numpy module with an alias name
import numpy as np
# creating a 1-dimensional numpy array
inputarray = np.array([4, 5, 1, 2, 8, 9, 7])
print("input array =",inputarray)
# printing the sub-array till index 5(excluded) by giving only stop value
# it starts from index 0 by default
print("the sub-array till index 5(excluded)=", inputarray[:5])

输出

执行时,上述程序将生成以下输出 -

input array = [4 5 1 2 8 9 7]
the sub-array till index 5(excluded)= [4 5 1 2 8]

方法 4 - 通过仅给出起始值来选择/访问子数组

 

 

同样,将冒号左侧留空将为您提供一个数组,直到最后一个元素。

示例

以下程序返回输入 numpy 数组中从给定起始索引值到数组最后一个索引(默认)的子数组。

 

# importing numpy module with an alias name
import numpy as np
# creating a 1-dimensional numpy array
inputarray = np.array([4, 5, 1, 2, 8, 9, 7])
# printing the sub-array from index 2 to the last index by giving only the start value
print("input array = ",inputarray)
# it extends till the last index value by default
print("the sub-array till index 5(excluded)=", inputarray[2:])

输出

执行时,上述程序将生成以下输出 -

input array = [4 5 1 2 8 9 7]
the sub-array till index 5(excluded)= [1 2 8 9 7]

结论

我们在本文中使用四个不同的示例学习了如何在 python 中选择 numpy 数组的元素。我们还了解了切片 numpy 数组。

返回顶部
顶部
网站地图