如何跳过 Numpy 数组的每个第 N 个索引?
在 Python 中,我们有一些内置函数,如 array()、len()、append 和 mod(),可用于跳过 Numpy 数组的每个第 N 个索引。有很多方法可以跳过 NumPy 数组的第 n 个索引。numpy 模数技术是一种选择。我们可以首先使用 numpy.arange() 方法将数组排列成均匀间隔的块。然后,使用第 n 个索引,将 np.mod() 技术应用于生成的列表间隔并计算每个元素的模数。
语法
示例中使用了以下语法 -
array()
这是一个内置方法,将列表作为输入。
mod(first_item, Second_item)
mod 通过将第一项除以第二项来返回剩余数字。
arange()
这是 Python 中的内置方法,可用于设置数组的数值范围。
len()
这是 Python 中内置的方法,可用于查找对象的长度。
append()
append 方法接受一个参数,该参数将整数添加到给定列表的末尾。
示例 1
在下面的示例中,通过导入名为 numpy 的模块并将引用对象作为 np 来启动程序。然后使用 np.mod() 方法在方法上对列表进行间隔,并使用第 N 个索引计算每个 mod 元素。将原始数组中mod输出不为0的元素作为最终列表返回。
import numpy as np x = np.array([10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140]) new_arr = x[np.mod(np.arange(x.size), 5) != 0] print("跳过第N个索引后:") print(new_arr)
输出
跳过第N个索引后: [ 20 30 40 50 70 80 90 100 120 130 140]
示例 2
在下面的示例中,通过提及名为 numpy 的模块来启动程序,并将引用作为 np。然后使用数组方法将所有数字转换为列表并将其存储在变量 x 中。然后使用 len 方法找到 x 的长度。现在使用切片技术删除第 0 到第 4 个索引位置之间存在的数字,并重复相同的过程直到列表末尾。此过程将存储在变量 current_arr 中。最后,我们在变量 current_arr 的帮助下打印结果。
# Numpy Slicing import numpy as np x = np.array([9, 11, 12, 33, 32, 55, 88, 97, 23, 19, 86, 11, 3]) length = len(x) current_arr = x[0:length:4] print("List after n=4th element access:") print(current_arr)
输出
List after n=4th element access: [ 9 32 23 3]
示例 3
在下面的示例中,我们将跳过数组中数字的偶数索引位置。通过导入名为 numpy 的模块来启动程序,并将对象引用作为 np。然后使用 array() 方法将整数转换为列表并将其存储在变量 num 中。然后设置第 N 个索引,即 n=2,这将删除偶数索引位置。接下来,在变量 emp_arr 中使用空列表,该列表存储删除偶数索引位置整数后的剩余整数。继续使用 for 循环,其中整数 i 迭代到原始数组,即 num,然后使用 if 语句,其中所有元素都附加到新列表中,而不会在遍历每个索引位置时遇到第 N 个索引元素。所有这些过程都将存储在变量 emp_arr 中。最后,我们在名为 emp_arr 的变量的帮助下打印结果。
import numpy as np num = np.array([124, 301, 627, 387, 812, 113, 145, 65]) n = 2 # 第 N 个索引设置偶数位置的删除 # 跳过第 N 个位置后存储当前数字 emp_arr = [] cnt = 0 for i in num: if cnt % n != 0: emp_arr.append(i) cnt += 1 print("Array after skipping nth element:\n",emp_arr)
输出
Array after skipping nth element: [301, 387, 113, 65]
结论
我们讨论了跳过程序中给定数组中第 N 个索引位置的不同方法。最重要的部分是 NumPy 模块,它也被称为用于复杂数学运算的强大库,在数据科学、数据分析和机器学习等各个领域都有广泛的应用。它通过使用多维数组对象克服了执行速度较慢的问题,并具有用于操作数组的内置函数,如 append()、arange()、len() 等。