Data Science N026. dtype, ndim, shape, reshape, concatenate, array_split, zeros, ones, full, empty, ones_like, zeros_like, full_like, empty_like.

By rafaelaquino on 12/14/2023

Cordiales saludos

![26_portada.png](Image from post)

En esta oportunidad retomaremos la potente y versátil librería: numpy. Es importante que repasemos las publicaciones anteriores referente a esta librería.

N012 NumPyN013 NumPy - Arreglos UnidimensionalesN014 NumPy - Arreglos Unidimensionales ContinuaciónN015 NumPy - Arreglos BidimensionalesN016 NumPy - Arreglos Bidimensionales continuación

Quedaron temas pendientes y nos sirve de repaso en algunos ejercicios abordados en esta publicación.

Los ejercicios abordados aquí están realizados con array muy pequeños, que nos permitirá entender el concepto a estudiar. Todo esto se extrapola a la realidad cuando tengamos a nuestra disposición miles de datos. Las capturas de pantallas de los ejercicios son fáciles de entender y tenemos a nuestra disposición todos estos ejercicios en nuestro repositorio el cual fue creado en la publicación anterior.

Comencemos!

Tipo de datos

Para determinar el tipo de datos de nuestro array utilizaremos .dtype. Esto es importante a la hora de cotejar, comparar y operar datos de distintas fuentes.

![26_1.png](Image from post)

Definiendo nuestros datos

En algunas oportunidad necesitaremos un tipo específico de datos para poder realizar operaciones. Se usa en este caso dtype igualándolo al tipo de dato que deseamos. En el siguiente ejemplo usamos: dtype='float64'

![26_2.png](Image from post)

Cambiar el tipo de datos

Si ya el array existe con un determinado tipo de datos y deseamos cambiarlo usaremos: .astype(int)

![26_3.png](Image from post)

Vectores y Matrices

Repasemos como se declaran los vectores y matrices.

![26_4.png](Image from post)

Dimensión del array

La dimensión de los array la determinamos con .ndim. A continuación un ejemplo de un array unidimensional (vector) y de uno bidimensional (matriz).

![26_4a.png](Image from post)
![26_4b.png](Image from post)

Dimensión con número de elementos

La propiedad .shape nos da el contenido o número de elementos, tanto en filas como en columnas.

![26_5.png](Image from post)

Transformar la Dimensión de un array

Con .reshape() podemos transformar un arreglo unidimensional a un nuevo arreglo bidimensional.

![26_6.png](Image from post)

Recorriendo o iterando los elementos de un array

Podemos iterar un arreglo con el for in que utilizamos en python. La utilidad la veremos más adelante.

![26_7.png](Image from post)

Concatenación de Arrays

Podemos unir dos arrays con la propiedad .concatenate el segundo array se unirá a partir del último elemento del primer array.

![26_8.png](Image from post)

Dividir array

Esto sería lo contrario de concatenar. Teniendo un arreglo lo podemos dividir a nuestra conveniencia. En el siguiente ejercicio el arreglo original lo dividimos en dos arreglos por medio de .array_split.

![26_9.png](Image from post)

Para acceder a cada arreglo lo hacemos por medio del subíndice.

![26_10.png](Image from post)

ceros y Unos (Ya visto en este curso)

Esto nos sirve de repaso para profundizar en otros temas. YA sabemos que para generar un array de ceros utilizamos: .zeros y para generar un array de sólo unos utilizamos .ones

![26_11.png](Image from post)

.full

Es otra forma de inicializar una matriz. YA conocemos como hacerlo con sólo ceros y con solo unos. .full es muy versatil porque nos permite escoger con que número deseamos rellenar nuestro array.

En El siguiente ejercicio generamos un array unidimensional con 3 elementos con el número 4. Además generamos una matriz de 3 por 3 con el número 4.

![26_12.png](Image from post)

.empty

Para inicializar un array con números arbitrarios utilizaremos .empty.

![26_13.png](Image from post)

.ones_like

.ones_like nos generará un array espejo (mismo número de elementos) con número unos. En el siguiente ejercicio tenemos un array de 4 elementos, entonces generamos la matriz espejo con 4 unos, ya que el array original tiene cuatro elementos.

![26_14.png](Image from post)

En el siguiente ejercicio tenemos una array bidimensional con 2 filas y cuatro columnas, al utilizar .one_like generamos una matriz con la misma dimensión del array original, es decir: 2 filas y cuatro columnas con solo unos.

![26_15.png](Image from post)

.zeros_like

.zeros_like nos generará un array espejo (mismo número de elementos) con número ceros. En el siguiente ejercicio tenemos un array de 4 elementos, entonces generamos la matriz espejo con 4 ceros, ya que el array original tiene cuatro elementos.

También tenemos una array bidimensional con 2 filas y cuatro columnas, al utilizar .zeros_like generamos una matriz con la misma dimensión del array original, es decir: 2 filas y cuatro columnas con solo ceros.

![26_16.png](Image from post)

.full_like

.full_like nos generará un array espejo (mismo número de elementos) con un número que determinemos o nos convenga, en este caso números 4. En el siguiente ejercicio tenemos un array de 4 elementos, entonces generamos la matriz espejo con 4 cuatros, ya que el array original tiene cuatro elementos.

También tenemos una array bidimensional con 2 filas y cuatro columnas, al utilizar .full_like generamos una matriz con la misma dimensión del array original, es decir: 2 filas y cuatro columnas con el numero escogido o seleccionado, es decir el número 2.

![26_17.png](Image from post)

.empty_like

.empty_like funciona igual que ones_like, zeros_like y full_like pero con números arbitrarios.

![26_18.png](Image from post)

Actualizando el repositorio

Este apartado te permite practicar git. Poco a poco de darás cuenta de la utilidad y lo importante para trabajar en este mundo de la programación e informática.

![26_19.png](Image from post)

Aquí nuestro repositorio actualizado con todos los ejercicios tratado en esta publicación.

![26_20.png](Image from post)

link del ejercicio 26


Hasta aquí nuestra publicación, nos volveremos a encontrar el próximo miércoles.

Todos a programar! Rafael Aquino Bogotá / Colombia

Comments (3)

entropia's avatar @entropia 12/16/2023

¡Felicitaciones!


Has sido votado por @entropia

Estás participando para optar a la mención especial que se efectuará el domingo 17 de diciembre del 2023 a las 8:00 pm (hora de Venezuela), gracias a la cual el autor del artículo seleccionado recibirá la cantidad de 1 HIVE transferida a su cuenta.

¡También has recibido 1 ENTROKEN! El token del PROYECTO ENTROPÍA impulsado por la plataforma Steem-Engine.


1. Invierte en el PROYECTO ENTROPÍA y recibe ganancias semanalmente. Entra aquí para más información.

2. Contáctanos en Discord: https://discord.gg/hkCjFeb

3. Suscríbete a nuestra COMUNIDAD y apoya al trail de @Entropia y así podrás ganar recompensas de curación de forma automática. Entra aquí para más información sobre nuestro trail.

4. Visita nuestro canal de Youtube.

Atentamente

El equipo de curación del PROYECTO ENTROPÍA

chessbrotherspro's avatar @chessbrotherspro 12/16/2023

¡Enhorabuena!


Has recibido el voto de PROYECTO CHESS BROTHERS

✅ Has hecho un buen trabajo, por lo cual tu publicación ha sido valorada y ha recibido el apoyo de parte de CHESS BROTHERS ♔ 💪


♟ Te invitamos a usar nuestra etiqueta #chessbrothers y a que aprendas más sobre nosotros.

♟♟ También puedes contactarnos en nuestro servidor de Discord y promocionar allí tus publicaciones.

♟♟♟ Considera unirte a nuestro trail de curación para que trabajemos en equipo y recibas recompensas automáticamente.

♞♟ Echa un vistazo a nuestra cuenta @chessbrotherspro para que te informes sobre el proceso de curación llevado a diario por nuestro equipo.


🏅 Si quieres obtener ganancias con tu delegacion de HP y apoyar a nuestro proyecto, te invitamos a unirte al plan Master Investor. Aquí puedes aprender cómo hacerlo.


Cordialmente

El equipo de CHESS BROTHERS

stemsocial's avatar @stemsocial 12/16/2023

Thanks for your contribution to the STEMsocial community. Feel free to join us on discord to get to know the rest of us!

Please consider delegating to the @stemsocial account (85% of the curation rewards are returned).

You may also include @stemsocial as a beneficiary of the rewards of this post to get a stronger support.