Copiar matriz en Python

Copiar matriz en Python
Numpy es una biblioteca muy útil de Python para crear diferentes tipos de matrices y realizar cálculos numéricos. La matriz es una estructura de datos de Python para almacenar múltiples elementos de Numpy. La matriz se puede copiar en Python utilizando el operador de asignación, diferentes funciones incorporadas de la biblioteca Numpy y para un bucle. En este tutorial se han mostrado diferentes formas de copiar una matriz en Python.

Ejemplo 1: Copie una matriz usando el operador '='

Se puede copiar una matriz a otra matriz utilizando el operador de asignación "=". Pero este operador no crea una copia duplicada de la matriz principal y simplemente crea una referencia de la matriz original. Entonces, si algún valor se cambia a la matriz original, entonces cambiará el valor de la matriz copiada también. Cree un archivo de Python con el siguiente script para verificar el uso del operador de asignación para copiar una matriz.

#Importa el módulo Numpy
importar numpy como np
#Cree una matriz
Array1 = NP.matriz ([34.5, 89.34, 23.6, 45.72, 62.87])
#Copy la matriz usando '=' operador
array2 = array1
#Modifique el cuarto elemento de la matriz principal
Array1 [3] = 10.12
imprimir ("la salida después de modificar la matriz principal")
#Dispray ambas matrices
Imprimir ("El contenido de la matriz principal", Array1)
Imprimir ("El contenido de la matriz copiada", Array2)
#Modifique el primer elemento de la matriz copiada
Array2 [0] = 20.34
imprimir ("\ nthe salida después de modificar la matriz copiada")
#Dispraad de ambas matrices nuevamente
Imprimir ("El contenido de la matriz principal", Array1)
Imprimir ("El contenido de la matriz copiada", Array2)

Producción
La siguiente salida aparecerá después de ejecutar el script anterior. La salida muestra que los cambios en la matriz principal cambian en la matriz copiada y los cambios en el cambio de matriz copiado en la matriz principal.

Ejemplo 2: Copie una matriz usando la función Copy ()

Usando la copia() La función es otra forma de copiar una matriz en Python. En este caso, se crea un nuevo objeto de matriz a partir de la matriz original y este tipo de copia se llama copia profunda. Si algún valor se modifica en la matriz original o copiada, entonces no crea ningún cambio en otra matriz. La sintaxis de la función copy () se da a continuación.

Sintaxis

array2 = array1.Copiar()

El método Copy () no toma ningún argumento y devuelve una nueva matriz con los valores de la matriz original.

Cree un archivo Python con el siguiente script que copiará una matriz Numpy usando la función Copiar (). Aquí, el valor de la matriz original y la matriz copiada se ha cambiado en el script.

#Módulo Numpy de Import
importar numpy como np
#Cree una matriz
Array1 = NP.Array ([67, 45, 78, 12, 56, 51])
#Copy la matriz usando la función copy ()
array2 = array1.Copiar()
#Modifique el tercer elemento de la matriz principal
Array1 [2] = 99
imprimir ("la salida después de modificar la matriz principal")
#Dispray ambas matrices
Imprimir ("El contenido de la matriz principal", Array1)
Imprimir ("El contenido de la matriz copiada", Array2)
#Modifique el sexto elemento de la matriz copiada
Array2 [5] = 0
imprimir ("\ nthe salida después de modificar la matriz copiada")
#Dispraad de ambas matrices nuevamente
Imprimir ("El contenido de la matriz principal", Array1)
Imprimir ("El contenido de la matriz copiada", Array2)

Producción
La siguiente salida aparecerá después de ejecutar el script anterior. La salida muestra que cambiar en la matriz principal no cambia el valor de la matriz copiada y el cambio en la matriz copiada no cambia el valor de la matriz principal.

Ejemplo 3: Copiar una matriz usando la función View ()

Usando la vista() La función es otra forma de copiar una matriz en Python. Pero esta función no crea una copia duplicada de la matriz principal y simplemente crea una referencia de la matriz original. Entonces, si algún valor se cambia a la matriz original, entonces cambiará el valor de la matriz copiada también. Este tipo de copia se llama copia superficial. La sintaxis de la función View () se da a continuación.

Sintaxis

array2 = array1.vista()

Cree un archivo Python con el siguiente script que copiará una matriz Numpy usando la función Ver (). Aquí, el valor de la matriz original y la matriz copiada se ha cambiado en el script.

#Módulo Numpy de Import
importar numpy como np
#Cree una matriz
Array1 = NP.Array ([7, 4, 7, 2, 1, 9])
#Copia la matriz usando la función View ()
array2 = array1.vista()
#Modifique el primer elemento de la matriz principal
Array1 [0] = 11
imprimir ("la salida después de modificar la matriz principal")
#Dispray ambas matrices
Imprimir ("El contenido de la matriz principal", Array1)
Imprimir ("El contenido de la matriz copiada", Array2)
#Modifique el quinto elemento de la matriz copiada
Array2 [4] = 99
imprimir ("\ nthe salida después de modificar la matriz copiada")
#Dispraad de ambas matrices nuevamente
Imprimir ("El contenido de la matriz principal", Array1)
Imprimir ("El contenido de la matriz copiada", Array2)

Producción
La siguiente salida aparecerá después de ejecutar el script anterior. La salida muestra que cambiar en la matriz principal cambia los valores de la matriz copiada y el cambio en la matriz copiada cambia el valor de la matriz principal.

Ejemplo 4: Copiar matriz usando bucle

Cree un archivo de Python con el siguiente script para conocer la forma de copiar una matriz sin usar ninguna función incorporada o operador de asignación. Se puede usar cualquier bucle para copiar los valores de una matriz a otra matriz. El bucle 'para' se ha utilizado en el script para copiar una matriz a otra matriz.

#Módulo Numpy de Import
importar numpy como np
#Cree una matriz
Array1 = NP.Array ([11, 22, 33, 44, 55, 66, 77, 88])
#Cree la segunda matriz con el tamaño de la primera matriz
array2 = [none]*len (array1)
#Copiar todos los elementos de una matriz en otra
para i en el rango (0, Len (Array1)):
array2 [i] = array1 [i];
#Modifique el segundo elemento de la matriz principal
Array1 [1] = 25
#Modifique el cuarto elemento de la matriz copiada
Array2 [3] = 45
imprimir ("la salida después de modificar las primeras y segunda matrices")
#Dispray ambas matrices
Imprimir ("El contenido de la matriz original", Array1)
Imprimir ("El contenido de la matriz copiada", Array2)

Producción
La siguiente salida aparecerá después de ejecutar el script anterior. La salida muestra que cambiar en la matriz principal no cambia el valor de la matriz copiada y el cambio en la matriz copiada no cambia el valor de la matriz principal.

Conclusión

Las formas de copiar matrices mediante el uso del operador de asignación, las funciones incorporadas y el bucle se han mostrado en este tutorial. La función de operador de asignación y ver () crea una copia superficial de la matriz original y la función de copia () y el bucle crea una copia profunda de la matriz original.