3er Parcial Flashcards
Para qué se utiliza la librería Pandas?
Trabajar con estructuras de datos.
Qué tipo de datos puedo agregar a un Data Frame?
de cualquier tipo, no solo int.
¿Qué características tiene la librería Pandas?
- define nuevas estructuras de datos basadas en los arrays de la librería NumPy pero con nuevas funcionalidades.
- Permite leer y escribir fácilmente ficheros en formato
CSV, Excel y bases de datos SQL. - Permite acceder a los datos mediante índices o nombres para filas y columnas.
- Ofrece métodos para reordenar, dividir y combinar conjuntos de datos.
- Permite trabajar con series temporales (fechas).
- Realiza todas estas operaciones de manera muy eficiente
¿Para qué sirve el comando Pip?
Para instalar librerías no incluidas en Python, para ello se utiliza Pip Install Pandas (o el nombre de la librería) después de bajar el paquete.
Pandas dispone de tres estructuras de datos diferentes:
- Series
- DataFrames
- Panel
¿Qué es una Serie y qué características tiene?
Estructura de una dimensión. Son estructuras similares a los arrays de una dimensión.
- Son homogéneas, es decir, sus elementos tienen que ser del mismo tipo, y su tamaño es inmutable, es decir, no se puede cambiar, aunque si su contenido.
- Dispone de un índice que asocia un nombre a cada elemento del la serie, a través de la cuál se accede al elemento.
¿Qué es un DataFrame?
Estructura de dos dimensiones (tablas).
¿Qué es un Panel?
Estructura de tres dimensiones (cubos).
¿Cómo se construyen las estructuras de datos en Pandas?
A partir de arrays de la librería NumPy, añadiendo nuevas funcionalidades.
La diferencia es que las series aparecen con un índice. Su tamaño no es mutable (deben ser del mismo tamaño.
ejercicio:
Escribe una serie a partir de una lista
import pandas as pd
s= pd.Series([‘Matemáticas’, ‘Historia’, ‘Economía’,
‘Programación’, Inglés’], index=[‘A1’, ‘A2’,’A3’,’A4’,’A5’], dtype=’string)
¿Cómo se crean series a partir de una lista?
Series (data=lista, index=indices, dtype=tipo)
- Devuelve un objeto de tipo Series con los datos de la lista “lista”, las filas especificados en la lista “índices” y el tipo de datos indicado en tipo.
- Si no se pasa la lista de índices se utilizan como índices los enteros del 0 al n-1, donde n es el tamaño de la serie.
- Si no se pasa el tipo de dato se infiere.
¿Cómo se crea una serie a partir de un diccionario?
Series(data=diccionario, index=indices)
- Devuelve un objeto de tipo Series con los valores del diccionario y las filas especificados en la lista “índices”.
- Si no se pasa la lista de índices se utilizan como índices las claves del diccionario.
¿Qué diferencia tiene la creación de una serie a partir de una lista y de un diccionario?
Las listas utilizan corchetes [] y no necesitan de un índice ya que lo asigna automáticamente comenzando en 0.
Los diccionarios utilizan {} y asignan una palabra que funcionará como índice a un valor.
ejercicio:
Crea una serie a partir de un diccionario
import pandas as pd
s = pd. Series({‘Matemática’: 6.0, ‘Economía’: 4.5, ‘Programación’: 8.5})
print(s)
¿Qué hace dtype?
Devuelve el tipo de datos de los elementos en una serie.
ie.
print(s.dtype)
¿Qué hace size?
Devuelve el número de elementos de la serie
ie.
print(s.size)
¿Qué hace index?
Devuelve una lista con los nombres de las filas del DataFrame.
ie.
print(s.index)
¿Qué método utilizamos para eliminar elementos nulos o desconocidos de una lista?
dropna()
Los datos desconocidos representan en Pandas por NaN y los nulos por None.
- Tanto unos como otros suelen ser un problema a la hora de realizar algunos análisis de datos, por lo que es habitual eliminarlos.
ie.
x=x.dropna()
¿Qué método utilizamos para imprimir los valores de una lista con una condición?
Por ejemplo, aquellos mayores a 8 en una serie “y”.
ie.
Devuelve los elementos que corresponden al valor True del booleano.
print(y[y>8])
¿Qué contiene un DataFrame?
Contiene dos índices, uno para filas y otro para las columnas, y se puede acceder a sus elementos mediante los nombres de las filas y columnas.
¿Qué define un objeto del tipo DataFrame?
Define un conjunto de datos estructurado en forma de tabla donde cada columna es un objeto de tipo Series, es decir, todos los datos de una misma columna son del mismo tipo, y las filas son registros que pueden contender datos de distintos tipos.
¿Qué sintaxis se utiliza para crear un DataFrame a partir de un diccionario?
DataFrame(data=diccionario, index, columns=columnas, dtype=tipos)
- La lista filas debe tener el mismo tamaño que las listas del diccionario, mientras que las listas columnas y tipos tienen que tener el mismo tamaño que el diccionario. Si no se pasa la lista de filas se utilizan como nombres los enteros empezando en 0. Si no se pasa la lista de columnas se utilizan como nombres las claves del diccionario. Si no se pasa la lista de tipos, se infiere.
- Los valores asociados a las claves del diccionario deben ser listas del mismo tamaño.
ie.
datos= {‘nombre’:[‘María’], ‘edad’:[19], ‘grado’:[‘1ro’]}
df=pd.DataFrame(datos)
¿Qué sintaxis se utiliza para crear un DataFrame a partir de un Archivo CSV?
read_csv(fichero.csv, sep=separador, header=n, index_col=m, na_values=no-validos, decimal=separador-decimal)
- Devuelve un objeto del tipo DataFrame con los datos del archivoCSV. Usa sep como separador de los datos la cadena.
- Como nombres de columnas se utiliza los valores de la fila n.
- Como nombres de filas los valores de la columna m.
- Si no se indica m se utilizan como nombres de filas los enteros empezando en 0.
- Los valores incluídos en la lista no-validos se convierten en NaN.
- Para los datos numéricos se utiliza como separador de decimales el carácter indicado en separador-decimal.
ie.
df=pf.read_csv(“tabla_datos2.csv”, sep= ‘, ‘, decimal= “,”)
¿Qué sintaxis se utiliza para crear un DataFrame a partir de un Archivo de Excel?
read_excel(fichero.xlsx, sheet_name=hoja, header=n, index_col=m, na_values=no-validos, decimal=separador-decimal)
- Devuelve un objeto del tipo DataFrame con los datos de la hoja de cálculo hoja del archivo Excel.
- Como nombres de columnas se utiliza los valores de la fila n y como
- nombres de filas los valores de la columna m.
- Si no se indica m se utilizan como nombres de filas los enteros empezando en 0.
- Los valores incluidos en la lista no-validos se convierten en NaN.
- Para los datos numéricos se utiliza como separador de decimales el carácter indicado en separador-decimal.
ie.
df=pd.read_excel(“tabla_datos2.xlsx”)
¿Qué procedimiento utilizamos para añadir una columna a un DataFrame?
es similar al de añadir un nuevo par a un diccionario, pero pasando los valores de la columna en una lista o serie.
df[nombre] = lista/serie: Añade al DataFrame df una nueva columna con el nombre nombre y los valores de la lista “lista”/serie “serie”.
- Para la lista, debe tener el mismo tamaño que el número de filas de df.
- Para la serie, si el tamaño de la serie es menor que el número de filas de df se rellena con valores NaN mientras que si es mayor se recorta.
ie.
df=pd.read_excel(“tabla_datos2.xlsx”)
df[“edad”]=pd.Series([23,45,65])
ejercicio:
crear una operación sobre columnas de un DataFrame
Cuando los datos de una misma columna de un DataFrame son del mismo tipo, es fácil aplicar la misma operación a todos los elementos de la columna.
import pandas as pd
df = pd.read_excel(‘tabla_datos2.xlsx’)
df[‘edad’]=pd.Series([23,45,65])
print(df)
print(df[‘estatura cm’]*100)
print(df[‘edad’]==45)
Los DataFrame y las series comparten una serie de métodos para resumir la info de un DataFrame por columnas:
- df.count()
- df.sum()
- df.cumsum()
- df.min()
- df.max()
- df.describe(include=tipo)
¿Qué hace el método df.count()?
Devuelve una serie número de elementos que no son nulos.
¿Qué hace el método df.sum()?
Devuelve una serie con las suma de los datos de las columnas del DataFrame si cuando los datos son de un tipo numérico, o la concatenación de ellos cuando son del tipo cadena str.
¿Qué hace el método df.cumsum()?
Devuelve un DataFrame con la suma acumulada de los datos de las columnas del DataFrame df cuando los datos son de un tipo numérico.
¿Qué hace el método df.min()?
Devuelve una serie con los menores de los datos de las columnas del DataFrame df.