Tipos de datos
Clase 3 de 24 • Curso de Manipulación y Transformación de Datos con Pandas y NumPy
Contenido del curso
NumPy
Pandas
- 11

Series y DataFrames en Pandas
12:14 min - 12

Leer archivos CSV y JSON con Pandas
08:21 min - 13

Filtrado con loc y iloc
09:25 min - 14

Agregar o eliminar datos con Pandas
11:52 min - 15

Manejo de datos nulos
08:12 min - 16

Filtrado por condiciones
05:42 min - 17

Funciones principales de Pandas
09:34 min - 18

groupby
10:15 min - 19

Combinando DataFrames
03:58 min - 20

Merge y Concat
14:20 min - 21

Join
05:12 min - 22
Pivot y Melt
01:51 min - 23

Apply
07:41 min Quiz Pandas
Cierre
Los arrays de NumPy solo pueden contener un tipo de dato, ya que esto es lo que le confiere las ventajas de la optimización de memoria.
Podemos conocer el tipo de datos del array consultando la propiedad .dtype
arr = np.array([1, 2, 3, 4])
arr.dtype
---> dtype('int64')
Si queremos usar otro tipo de dato, lo podemos definir en la declaración del array.
arr = np.array([1, 2, 3, 4], dtype = 'float64')
arr.dtype
---> dtype('float64')
Ahora vemos que los valores están con punto decimal.
arr
---> array([1., 2., 3., 4.])
Si ya se tiene el array definido, se utiliza el método .astype() para convertir el tipo de dato.
arr = np.array([1, 2, 3, 4])
arr = arr.astype(np.float64)
arr
---> array([1., 2., 3., 4.])
También se puede cambiar a tipo booleano recordando que los números diferentes de 0 se convierten en True.
arr = np.array([0, 1, 2, 3, 4])
arr = arr.astype(np.bool_)
arr
---> array([False, True, True, True, True])
También podemos convertir los datos en tipo string.
arr = np.array([0, 1, 2, 3, 4])
arr = arr.astype(np.string_)
arr
---> array([b'0', b'1', b'2', b'3', b'4'], dtype='|S21')
De igual manera, se puede pasar de string a número.
arr = np.array(['0', '1', '2', '3', '4'])
arr = arr.astype(np.int8)
arr
---> array([0, 1, 2, 3, 4], dtype=int8)
Si un elemento no es de tipo número, el método falla.
arr = np.array(['hola','0', '1', '2', '3', '4'])
arr = arr.astype(np.int8)
arr
---> ValueError: invalid literal for int() with base 10: 'hola'
El array de Numpy únicamente puede tener un único tipo de datos en el cual va a trabajar. No puedo tener la mitad del array en int y la otra mitad en bool.
Contribución creada por: Edward Giraldo.