En Python, puede manejar y manipular diferentes tipos de variables. Cada una tiene sus propias especificidades y beneficios. No revisaremos cada una de ellas, sino que nos centraremos en las principales para esta sesió. Para cada uno de los siguientes ejemplos de código, puede ejecutar el código en Google Collab () para ver los resultados.
El tipo de variable más básica es numérico. Esta puede contener números enteros o decimales (o flotantes), y algunas operaciones matemáticas se pueden realizar encima de ellos.
Usemos una variable entera llamada var1 que tomará el valor 8 y otra llamada var2 con el valor 160.88, y las sumaremos junto con el + operador, como se muestra aquí:
In [0]:
var1 = 8
var2 = 160.88
var1 + var2
Out[0]:
In [0]:
var3 = 'Hello, '
var4 = 'World'
Para mostrar el contenido de una variable, puede llamar a la función print():
In [0]:
print(var3)
print(var4)
Python también proporciona una interfaz llamada cadenas f para imprimir texto con el valor de variables definidas.
Es muy útil cuando desea imprimir resultados con texto adicional para hacerlo más legible e interpretar los resultados. También es bastante común usar cadenas f para imprimir registros.
Deberá agregar f antes de las comillas (o comillas dobles) para especificar que el texto será una cadena f. Luego puede agregar una variable existente dentro de las comillas y mostrar el texto con el valor de esta variable.
Es necesario para envolver la variable con llaves, {}.
Por ejemplo, si queremos imprimir Text: antes de los valores de var3 y var 4, escribiremos el siguiente código:
In [0]:
print(f"Text: {var3} {var4}!")
También puede realizar algunas transformaciones relacionadas con el texto con variables de cadena, como poner en mayúscula o reemplazar caracteres.
Por ejemplo, puede concatenar las dos variables junto con el + operador:
In [0]:
var3 + var4
Out[0]:
In [0]:
var5 = ['I', 'love', 'data', 'science']
print(var5)
Una lista puede tener diferentes tipos de elementos, por lo que puede mezclar variables numéricas y de texto en ella:
In [0]:
var6 = ['Packt', 15019, 2020, 'Data Science']
print(var6)
Se puede acceder a un elemento de una lista por su índice (su posición en la lista).
Para acceder al primer elemento (índice 0) y al tercer elemento (índice 2) de una lista, haga lo siguiente:
Nota
En Python, todos los índices comienzan en 0.
In [0]:
print(var6[0]) # para acceder al elemento 0 de la lista
print(var6[2]) # para acceder al elemento 2 de la lista
Python proporciona una API para acceder a una variedad de elementos utilizando el : operador.
Solo necesita especificar el índice inicial en el lado izquierdo del operador y el índice final en el lado derecho.
El índice final siempre se excluye del rango. Por lo tanto, si desea obtener los primeros tres elementos (índice 0 a 2), debe hacer lo siguiente:
In [0]:
print(var6[0:3]) # para obtener los elementos del 0 al 2 (0,1,2)
También puede recorrer cada elemento de una lista utilizando un bucle for.
Si desea imprimir todos los elementos de la var6lista, debe hacer esto:
In [0]:
for item in var6:
print(item)
Puede agregar un elemento al final de la lista utilizando el método .append():
In [0]:
var6.append('Python')
print(var6)
Para eliminar un elemento de la lista, utiliza el método .remove():
In [0]:
var6.remove(15019)
print(var6)
Otra variable muy popular de Python utilizada por los científicos de datos es el tipo de diccionario.
Por ejemplo, se puede usar para cargar datos JSON en Python para que luego se pueda convertir en un DataFrame (aprenderá más sobre el formato JSON y los DataFrames en las siguientes secciones).
Un diccionario contiene múltiples elementos, como una lista , pero cada elemento está organizado como un par clave-valor.
Un diccionario no está indexado por números sino por claves. Por lo tanto, para acceder a un valor específico, deberá llamar al elemento por su clave correspondiente.
Para definir un diccionario en Python, usará llaves {}, y especificará las claves y los valores separados por :, como se muestra aquí:
In [0]:
var7 = {'Topic': 'Data Science', 'Language': 'Python'}
print(var7)
Para acceder a un valor específico, debe proporcionar el nombre de clave correspondiente.
Por ejemplo, si desea obtener el valor Python, haga esto:
Nota
Cada par clave-valor en un diccionario debe ser único.
In [0]:
var7['Language']
Out[0]:
Python proporciona un método para acceder a todos los nombres clave de un diccionario .keys(), que se utiliza como se muestra en el siguiente fragmento de código:
In [0]:
var7.keys()
Out[0]:
También hay un método llamado .values(), que se utiliza para acceder a todos los valores de un diccionario:
In [0]:
var7.values()
Out[0]:
Puede recorrer todos los elementos de un diccionario utilizando un bucle for y el método .items(), como se muestra en el siguiente fragmento de código:
In [0]:
for key, value in var7.items():
print(key)
print(value)
Puede agregar un nuevo elemento en un diccionario proporcionando el nombre de clave como este:
In [0]:
var7['Publisher'] = 'Packt'
print(var7)
Puede eliminar un elemento de un diccionario con el comando del:
In [0]:
del var7['Publisher']
print(var7)
In [0]:
Ejercicio 1.01: creación de un diccionario que contendrá algoritmos de aprendizaje automático
En este ejercicio, crearemos un diccionario usando Python que contendrá una colección de diferentes algoritmos de aprendizaje automático que se tratarán en este libro.
Abrir en un nuevo cuaderno de Google Collaboratory ().
Crear una lista algorithm que contendrá los siguientes elementos: Linear Regression, Logistic Regression, RandomForest, y a3c:
In [0]:
algorithm = ['Linear Regression', 'Logistic Regression', 'RandomForest', 'a3c']
In [0]:
learning = ['Supervised', 'Supervised', 'Supervised', 'Reinforcement']
In [0]:
algorithm_type = ['Regression', 'Classification', 'Regression or Classification', 'Game AI']
In [0]:
algorithm.append('k-means')
In [0]:
print(algorithm)
In [0]:
learning.append('Unsupervised')
In [0]:
print(learning)
In [0]:
algorithm_type.append('Clustering')
In [0]:
print(algorithm_type)
In [0]:
machine_learning = {}
In [0]:
machine_learning['algorithm'] = algorithm
In [0]:
print(machine_learning)
In [0]:
machine_learning['learning'] = learning
In [0]:
machine_learning['algorithm_type'] = algorithm_type
In [0]:
print(machine_learning)
In [0]:
machine_learning['algorithm'].remove('a3c')
In [0]:
print(machine_learning['algorithm'])
In [0]:
machine_learning['learning'].remove('Reinforcement')
In [0]:
machine_learning['algorithm_type'].remove('Game AI')
In [0]:
print(machine_learning)