0% encontró este documento útil (0 votos)
12 vistas7 páginas

Ap S10 - Pandas - Colab

Pandas es una biblioteca que facilita el análisis, limpieza y transformación de datos mediante la estructura de datos llamada DataFrame, similar a una tabla de Excel. El documento detalla cómo importar Pandas, crear un DataFrame a partir de un diccionario, y realizar diversas operaciones como mostrar información, filtrar datos, y calcular estadísticas. También se explican funciones para modificar el DataFrame, agregar filas, y contar valores únicos.

Cargado por

pacogavina3
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
12 vistas7 páginas

Ap S10 - Pandas - Colab

Pandas es una biblioteca que facilita el análisis, limpieza y transformación de datos mediante la estructura de datos llamada DataFrame, similar a una tabla de Excel. El documento detalla cómo importar Pandas, crear un DataFrame a partir de un diccionario, y realizar diversas operaciones como mostrar información, filtrar datos, y calcular estadísticas. También se explican funciones para modificar el DataFrame, agregar filas, y contar valores únicos.

Cargado por

pacogavina3
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

6/9/25, 9:26 AM Ap S10 - Pandas - Colab

PANDAS

Es un biblioteca, estos son programas que hizo otra persona y podemos usar. La ventaja es que nos ahorramos escribir codigo y usamos
algo que esta comprobando que funciona, "No hace falta reinventar la rueda"

-Es una biblioteca que nos ayuda a ANALIZAR, TRABAJAR, LIMPIAR y TRANSFORMAR con datos que tengamos.

-La estructura principal se llama DATA FRAME, se asemeja a una tabla con datos, conceptualmente parecido a un excel/sheets.

1. Importamos pandas con el alias pd.

import pandas as pd

2. Mostramos la versión de pandas que importamos.

pd.__version__

'2.2.2'

3. Imaginemos que tenemos el siguiente diccionario data y la lista labels:

data = {'animal': ['cat', 'cat', 'snake', 'dog', 'dog', 'cat', 'snake', 'cat',
'dog', 'dog'],
'age': [2.5, 3, 0.5, None, 5, 2, 4.5, None, 7, 3],
'visits': [1, 3, 2, 3, 2, 3, 1, 1, 2, 1],
'priority': ['yes', 'yes', 'no', 'yes', 'no', 'no', 'no', 'yes', 'no',
'no']}
labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']

Vamos a crear un DataFrame ' df ' a partir del diccionario 'data' usando 'labels' como índice.

data = {'animal': ['cat', 'cat', 'snake', 'dog', 'dog', 'cat', 'snake', 'cat',
'dog', 'dog'],
'age': [2.5, 3, 0.5, None, 5, 2, 4.5, None, 7, 3],
'visits': [1, 3, 2, 3, 2, 3, 1, 1, 2, 1],
'priority': ['yes', 'yes', 'no', 'yes', 'no', 'no', 'no', 'yes', 'no',
'no']}
labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
df = pd.DataFrame(data, index=labels)
df # Esto lo ponemos para mostrarlo

animal age visits priority

a cat 2.5 1 yes

b cat 3.0 3 yes

c snake 0.5 2 no

d dog NaN 3 yes

e dog 5.0 2 no

f cat 2.0 3 no

g snake 4.5 1 no

h cat NaN 1 yes

i dog 7.0 2 no

j dog 3.0 1 no

Start coding or generate with AI.

' df ' es el nombre que le asignamos al data frame de panda. Luego del = ponemos 'pd' para llamar a PANDA y .DataFrame es la funcion de
PANDA.

https://colab.research.google.com/drive/1VW8PJ53Z3-68mJwfaZQDPdsqOFnUjOlY#scrollTo=rrpft1Oj6TuT&printMode=true 1/7
6/9/25, 9:26 AM Ap S10 - Pandas - Colab
Luego dentro del parentesis incluimos los elementos a volcar en el dataframe -en este caso el diccionario 'data'- y luego la lista 'labels' en
formate 'index='

4. Mostramos información que resuma al DataFrame

df.info() nos devuelve información sobre el DataFrame incluidos sus índices y columnas, valores no nulos y uso de memoria

df.info()

<class 'pandas.core.frame.DataFrame'>
Index: 10 entries, a to j
Data columns (total 4 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 animal 10 non-null object
1 age 8 non-null float64
2 visits 10 non-null int64
3 priority 10 non-null object
dtypes: float64(1), int64(1), object(2)
memory usage: 700.0+ bytes

Otra forma de obtener algun tipo de información del DataFrame es utilizando la función describe la cual devuelve una serie con un resumen
descriptivo que incluye el número de datos, su suma, el mínimo, el máximo, la media, la desviación típica y los cuartile

df.describe()

age visits

count 8.000000 10.000000

mean 3.437500 1.900000

std 2.007797 0.875595

min 0.500000 1.000000

25% 2.375000 1.000000

50% 3.000000 2.000000

75% 4.625000 2.750000

max 7.000000 3.000000

5. df.head(n) Devuelve las primeras n filas del DataFrame df En el caso de no especificarlo, nos devuelve las primeras 5. Mostramos las
primeras 3 filas del DataFrame df.

NOTA; si le pido mas de las filas que hay nos devuelve las que existen y el faltante lo ignora

df.head(3)

animal age visits priority

a cat 2.5 1 yes

b cat 3.0 3 yes

c snake 0.5 2 no

'.iloc[:]' es una lista, le digo desde que columna quiero y cuantas quiero.

df.iloc[:3]
# Otra forma

animal age visits priority

a cat 2.5 1 yes

b cat 3.0 3 yes

c snake 0.5 2 no

https://colab.research.google.com/drive/1VW8PJ53Z3-68mJwfaZQDPdsqOFnUjOlY#scrollTo=rrpft1Oj6TuT&printMode=true 2/7
6/9/25, 9:26 AM Ap S10 - Pandas - Colab

6. Si queremos solamente mostrar las columnas 'animal' y 'age' columns del DataFrame df. Vamos a utilizar df.loc[filas, columnas] lo que
devuelve un DataFrame con los elementos de las filas de la lista filas y las columnas de la lista columnas. Si queremos que muestre
todas las columnas podemos poner : en su lugar.

df.loc[['a', 'j'], ['animal', 'age']]

animal age

a cat 2.5

j dog 3.0

Otra manera puede ser mediante el uso de doble corchete. En este caso no especificamos la cantidad de filas entonces nos muestra todas
por defecto.

# Otra manera
df[['animal', 'age']]

animal age

a cat 2.5

b cat 3.0

c snake 0.5

d dog NaN

e dog 5.0

f cat 2.0

g snake 4.5

h cat NaN

i dog 7.0

j dog 3.0

7. Ahora seleccionemos las filas[3, 4, 8] y columnas ['animal', 'age']

df.loc[df.index[[3, 4, 8]], ['animal', 'age']]

animal age

d dog NaN

e dog 5.0

i dog 7.0

8. Para filtrar los elementos de nuestra tabla lo que hacemos es poner una condición dentro de los corchetes. Por ejemplo, podemos
seleccionar solamente las filas que tengan número de visitas mayores que 3.

df[df['visits'] > 2]
#quiero que del data frame[me muestres los elementos[de la columna'visits'] elemento condicional '>' 2]

animal age visits priority

b cat 3.0 3 yes

d dog NaN 3 yes

f cat 20 3 no
 

9. Seleccionamos las filas que le falten los datos de la edad, es decir que su valor sea NaN. En este caso la función isnull() se usa como
condición que devuelve True si el valor de la columna es nulo o NaN.

https://colab.research.google.com/drive/1VW8PJ53Z3-68mJwfaZQDPdsqOFnUjOlY#scrollTo=rrpft1Oj6TuT&printMode=true 3/7
6/9/25, 9:26 AM Ap S10 - Pandas - Colab
df[df['age'].isnull()]

animal age visits priority

d dog NaN 3 yes

h cat NaN 1 yes

10. Podemos poner condiciones más complejas dentro de los corchetes. Seleccionamos las filas donde el animal sea cat y la edad es
menor a 3.

df[(df['animal'] == 'cat') & (df['age'] < 3)]

#NOTA IMPORTANTE: en PANDA, el 'and' -> '&', el 'or' -> '|' y el 'not' -> '~'

animal age visits priority

a cat 2.5 1 yes

f cat 2.0 3 no

11. La función between(a, b) elige los elementos que se encuentren en el rango [a,b]. Sería el equivalente de hacer columna >= a & columna
<= b. Seleccionamos las filas con edad entre 2 y 4 (inclusive).

df[df['age'].between(2, 4)]

animal age visits priority

a cat 2.5 1 yes

b cat 3.0 3 yes

f cat 2.0 3 no

j dog 3.0 1 no

14. Si queremos cambiar el valor de celdas específicas usamos el = como si fuera una variable normal. Cambiemos la edad en la fila 'f' a
1.5.

df.loc['f', 'age'] = 1.5


df

animal age visits priority

a cat 2.5 1 yes

b cat 3.0 3 yes

c snake 0.5 2 no

d dog NaN 3 yes

e dog 5.0 2 no

f cat 1.5 3 no

g snake 4.5 1 no

h cat NaN 1 yes

i dog 7.0 2 no

j dog 3.0 1 no

15. La función sum() suma todos los valores de la columna seleccionada. Sumemos la cantidad de visitas de todas las filas de df (numero
total de visitas).

df['visits'].sum()

np.int64(19)

https://colab.research.google.com/drive/1VW8PJ53Z3-68mJwfaZQDPdsqOFnUjOlY#scrollTo=rrpft1Oj6TuT&printMode=true 4/7
6/9/25, 9:26 AM Ap S10 - Pandas - Colab

16. Calculemos la media de las edades de los animales de df. En este caso groupby agrupa las filas según el animal y con la función mean
se calcula el promedio de la edad.

df.groupby('animal')['age'].mean()
#agrupa por ()'variable') y calcula de ['columna'] el .mean() (promedio).

age

animal

cat 2.333333

dog 5.000000

snake 2.500000

dtype: float64

17. Agreguemos una nueva fila 'k' a df con los valores que queramos para cada columna.

df.loc['k'] = ['dog', 5.5, 2, 'no']


df

animal age visits priority

a cat 2.5 1 yes

b cat 3.0 3 yes

c snake 0.5 2 no

d dog NaN 3 yes

e dog 5.0 2 no

f cat 1.5 3 no

g snake 4.5 1 no

h cat NaN 1 yes

i dog 7.0 2 no

j dog 3.0 1 no

k dog 5.5 2 no

Ahora borremos la columna nueva para volver a tener el DataFrame original. La función drop recibe el índice de la fila que se desea eliminar

df = df.drop('k')
df

animal age visits priority

a cat 2.5 1 yes

b cat 3.0 3 yes

c snake 0.5 2 no

d dog NaN 3 yes

e dog 5.0 2 no

f cat 1.5 3 no

g snake 4.5 1 no

h cat NaN 1 yes

i dog 7.0 2 no

j dog 30 1 no
 

18. La función value_counts() devuelve cuantas veces aparece cada valor único para una columna específica. Contemos qué cantidad de
animales hay en el df.

https://colab.research.google.com/drive/1VW8PJ53Z3-68mJwfaZQDPdsqOFnUjOlY#scrollTo=rrpft1Oj6TuT&printMode=true 5/7
6/9/25, 9:26 AM Ap S10 - Pandas - Colab

df['animal'].value_counts()

count

animal

cat 4

dog 4

snake 2

dtype: int64

19. La función sort_values(by, ascending) ordena la tabla con el criterio que pidamos. En el parámetro by ponemos una lista con las
columnas que queremos usar para ordenar y en ascending ponemos una lista de booleanos donde indicamos si queremos que el
ordenamiento de la lista anterior sea ascendente o no. Entonces, ordenemos el df primero a partir de los valores de edad 'age' en orden
descendente , luego por el valor de las visitas 'visits' en orden ascendente (la fila i debería estar primero, y la d última).

df.sort_values(by=['age', 'visits'], ascending=[False, True])


#le digo, ordena por 'age', si age es igual, decidi por 'visits', de manera ascending=[False, True]
# False y True refieren a si es de manera ascendente o no. Primero 'age' luego 'visits'

animal age visits priority

i dog 7.0 2 no

e dog 5.0 2 no

g snake 4.5 1 no

j dog 3.0 1 no

b cat 3.0 3 yes

a cat 2.5 1 yes

f cat 1.5 3 no

c snake 0.5 2 no

h cat NaN 1 yes

d dog NaN 3 yes

20. Con map podemos transformar los valores de columna entera, le pasamos un diccionario con elementos del tipo {valor_viejo:
valor_nuevo}. La columna 'priority' contiene valores 'yes' y 'no'. Vamos a reemplazarlos por: 'yes' como True y 'no' como False.

df['priority'] = df['priority'].map({'yes': True, 'no': False})


df

# le digo que del df['variable'] es igual a '=' df['variable'] mapeada '.map()'


# y dentro de ese map ({remplaso 'yes' por ':' 'True', 'no' : 'False'})

https://colab.research.google.com/drive/1VW8PJ53Z3-68mJwfaZQDPdsqOFnUjOlY#scrollTo=rrpft1Oj6TuT&printMode=true 6/7
6/9/25, 9:26 AM Ap S10 - Pandas - Colab

animal age visits priority

a cat 2.5 1 True

b cat 3.0 3 True

c snake 0.5 2 False

d dog NaN 3 True

e dog 5.0 2 False

f cat 1.5 3 False

g snake 4.5 1 False

h cat NaN 1 True

i dog 7.0 2 False

j dog 3.0 1 False

21. En la columna 'animal' cambiemos 'snake' por 'python'. Podemos usar map como antes o podemos usar replace que recibe primero el
valor viejo, después el valor nuevo, y realizará el reemplazo.

df['animal'] = df['animal'].replace('snake', 'python')


df

animal age visits priority

a cat 2.5 1 True

b cat 3.0 3 True

c python 0.5 2 False

d dog NaN 3 True

e dog 5.0 2 False

f cat 1.5 3 False

g python 4.5 1 False

h cat NaN 1 True

i dog 7.0 2 False

j dog 3.0 1 False

Double-click (or enter) to edit

https://colab.research.google.com/drive/1VW8PJ53Z3-68mJwfaZQDPdsqOFnUjOlY#scrollTo=rrpft1Oj6TuT&printMode=true 7/7

También podría gustarte