NumPy.copy():如何复制 NumPy 数组

今天我们将学习如何复制 NumPy 数组。我们也会在代码片段中尝试使用不同的方法。希望大家和我们一起练习,以获得预期的结果。让我们开始吧。

什么是 NumPy 数组?

数组是存储在连续内存位置的相似数据类型的数据的集合。它是最简单的数据结构,其中每个数据元素只需使用其索引号即可直接访问。 在Python中,数组是NumPy库的一种数据结构。NumPy 数组的一些关键特性如下。

  • 本质上是同质的。我们可以对数组元素执行所有操作。 
  • NumPy 中的数组可以是一维或多维的。
  • 它包含用于代码集成的工具
  • 我们可以创建不同数据类型的数组。
  • NumPy 数组的所有元素在内存块中具有相同的大小

让我们了解如何创建 NumPy 数组。我们可以按照以下代码片段使用 Python IDLE shell 创建我们的第一个 NumPy 数组。让我们和你一起编码。

#importing the numpy module
import numpy as np
 
#creating array
my_array = np.array(["Hi", "Hello", "Welcome", "to", "JournalDev"])
 
#printing our array
print(my_array)
 
print(type(my_array))

上面的代码片段将给出如下输出,我们可以看到创建了一个数组,并且我们打印的另一件事是数组的类型,它是numpy.ndarray.

["Hi", "Hello", "Welcome", "to", "JournalDev"]
<class 'numpy.ndarray'>

在执行我们的代码片段之前,请确保您已在计算机上安装了 NumPy 模块,如果没有,您可以通过在命令提示符中使用包安装程序来下载此模块,pip如下所示。

pip install numpy

现在,我们将了解使用不同方法复制 NumPy 数组的不同方法,如下所示。

1.使用NumPy.copy()方法

numpy.copy() 方法创建我们的数组的副本。在下面的示例中,我们将使用此方法将数组复制‘array‘ 到另一个数组‘copy_array‘ 。

#importing the numpy module
import numpy as np
  
# Creating a numpy Arrayusing numpy.array()
array = np.array([10.7, 16.94, 18.21, 25.50, 25.3, 56.9, 52.1])
 
#printing our original Array
print(array)
  
# Using numpy.copy() function
new_array= np.copy(array)
 
#printing the copied Arrayas new_array
print(new_array)

上面的代码片段将使用该方法将 Array 的内容复制到 new_array .copy() ,并给出如下输出。

复制数组

上述方法的语法是:

numpy.copy(array, order='K')

上述代码片段的参数是:

  • array – 要复制的数组的名称
  • order – 控制副本的内存布局。默认 order=’K’。这是可选的。

2. 复制多维 Numpy 数组

让我们看一下.copy()复制多维 NumPy 数组的方法的另一个示例。请遵循以下代码片段。

import numpy as np
 
# Creating a multi dimensional Array
array = np.array([['a','b','c'], ['h','d','s']])
 
#printing the original Array
print(array)
  
# using numpy.copy() method to copy
new_array = np.copy(array)
 
#printing the copied Array
print(new_array)

上面的代码片段将把多维数组复制到新数组,并给出如下输出。

复制多维数组 1

3. 使用赋值运算符复制 Numpy 数组

import numpy as np
  
# creating a 2 Dimensional array
array = np.array([['a','b','c'], ['h','d','s']])
 
# using Assignment operator
new_array= array
 
# printing copied array
print(new_array)

在上面的代码片段中,Array的内容被赋值运算=”赋给了new_array。让我们看看相同的输出。

赋值运算符示例输出

4.使用NumPy.empty_like()方法

import numpy as np
   
# creating an Array
array = np.array(["hello", "how", "are", "You"])
 
print(array)
   
# Creating an empty Numpy array similar to Array
new_array = np.empty_like(array)
 
# Now assign Array to copy
new_array [:] = array
 
#printing our new Array
print(new_array )

该方法返回具有相同数据的任意数据。它不会初始化该值。由于它没有初始化,我们需要为其分配值。这样,我们就将我们的数组复制到了new_array。上述代码片段的输出如下。

Empty Like 方法示例输出

概括

在本文中,我通过示例学习了如何使用不同的方法创建 NumPy 数组的副本。希望您一定已经练习并喜欢我们的代码片段。我们必须带着一些更令人兴奋的话题再次访问。