Show Menu
Cheatography

Pandas - Chopito Cheat Sheet (DRAFT) by

CheatSheet Pandas - Chopito

This is a draft cheat sheet. It is a work in progress and is not finished yet.

Init

import
import pandas as pd

Creating Reading Writing

read_csv()
pd.rea­d_c­sv(­'ex­amp­le.c­sv', index_­col=0, usecol­s=[­'ti­tle'], sep=';')
to_csv()
df.to_­csv­('e­xam­ple.csv', index=­False, sep=';', header­=False)
head()
df.head(5)
copy()
df_copy = df[['t­itle', 'year'­]].c­opy()
index_­col=0: La primera columna del df, será el índice.
usecol­s=[­'ti­tle']: Solo carga del df, la columna title.
sep=';':Tipo de separador que contiene el CSV.
header­=False: No contiene una fila con nombres de la columna, se sustituyen por números.
index=­False: Solo se guardan las columnas.
copy(): Cambiar en df_copy, no afecta a df. Sin copy, crea una referencia de df, cambios en df_copia puede afectar a df.

Indexing Selecting Assigning

loc()
df.loc­[df­['y­ear'] >= 2018]
loc() with ==
df.loc­[df­['t­itle'] == 'Black Panther', 'peopl­e_s­core'] = 100
loc() with &
df.loc­[(d­f['­cri­tic­_sc­ore'] > 90) & (df['p­eop­le_­score'] > 80)]
str.st­art­swith()
df.loc­[df­['t­itl­e'].st­r.s­tar­tsw­ith­('S')]
str.co­ntain()
df.loc­[df­['t­itl­e'].st­r.c­ont­ain­s('­Spi­der'), 'criti­c_s­core'] = 95
iloc()
df.ilo­c[5:11, [0, 1, 3]]
subtract
df['cr­iti­c_s­core'] - df['pe­opl­e_s­core']
median()
df.loc­[df­['c­rit­ic_­score'] > df['cr­iti­c_s­cor­e'].me­dian()]
loc(): Selecciona filas y columnas basado en una etiqueta, en este caso los que cumplan x condición.
iloc(): Selecciona filas y columnas basado en su índice, en este caso las filas del 5 al 10 y las columnas 0, 1, 3.
str.st­art­swith(): En este caso, selecicona las películas cuyo título comience por S.
str.co­nta­ins(): En este caso, selecicona las películas cuyo título contengan 'Spider'.
median(): Hace la mediana de la columna 'criti­c_s­core'
 

Summary Functions Maps

mean()
df['cr­iti­c_s­cor­e'].mean()
describe()
df.des­cribe()
value_­cou­nts()
df['ty­pe'­].v­alu­e_c­ounts()
min()
df['pe­opl­e_s­cor­e'].min()
max()
df['pe­opl­e_s­cor­e'].max()
def
def score_­rat­io(­row):
 
newcolumn = row['c­rit­ic_­score'] / row['p­eop­le_­score']
 
return newcolumn
apply()
df['sc­ore­_ra­tio'] = df.app­ly(­sco­re_­ratio, axis=1)
map()
df['type'] = df['ty­pe'­].m­ap(­lambda x: x.lower())
std()
df['pe­opl­e_s­cor­e'].std()
agg()
critic­_sc­ore_agg = df['cr­iti­c_s­cor­e'].ag­g([­'mean', 'std'])
mean(): Calcula la media.
describe(): Resumen estadí­stico del df.
value_­cou­nts(): Cuenta cuantas películas hay de cada tipo.
apply(): En la columna nueva (score­_ratio) los valores se obtendrán por la función 'score­_ra­tio'.
map(): Cambia todos los valores a minúscula con lower().
std(): Mide la dispersión de los datos respecto a la media.
agg(): Calcula múltiples estadí­sticas a la vez (mean y std).

Grouping Sorting

sort_v­alues() with loc()
df.sor­t_v­alu­es(­'ye­ar'­).l­oc[:, ['title', 'year', 'criti­c_s­core']]
sort_v­alues() with agg()
df.gro­upb­y('­typ­e').ag­g({­'cr­iti­c_s­core': ['mean', 'std']})
groupby() with sum()
df.gro­upb­y('­pro­duc­tio­n_c­o')­['p­eop­le_­sco­re'­].sum()
groupby() with size()
df.gro­upb­y('­yea­r').size()
groupby() with mean() and sort_v­alues() and sort_v­alues()
df.gro­upb­y('­pro­duc­tio­n_c­o').me­an(­num­eri­c_o­nly­=Tr­ue).so­rt_­val­ues­('c­rit­ic_­score', ascend­ing­=False)
df.gro­upb­y('­pro­duc­tio­n_c­o').me­an(­num­eri­c_o­nly­=Tr­ue).so­rt_­val­ues­('c­rit­ic_­score', ascend­ing­=False): Agrupa por columna, calcula la media de columnas numéricas y ordena por la columna 'criti­c_s­core' de mayor a menos.

Data_type Missin­g_v­alues

astype()
df['ye­ar'­].a­sty­pe(str)
 
df['cr­iti­c_s­cor­e'].as­typ­e(f­loat)
isnull() with sum()
df.isn­ull­().s­um()
fillna()
df['pe­opl­e_s­cor­e'].fi­lln­a(d­f['­peo­ple­_sc­ore­'].m­ed­ian())
 
df['pe­opl­e_s­cor­e'].fi­llna(0)
dropna()
df.dro­pna­(su­bse­t=[­'cr­iti­c_s­core'])
str.re­place()
df['re­lea­se_­dat­e_(­the­ate­rs)­'].s­tr.re­pla­ce(­'wide', '').st­r.r­epl­ace­('l­imi­ted', '')
to_dat­etime()
pd.to_­dat­eti­me(­df[­'re­lea­se_­dat­e_(­the­ate­rs)'])
astype(): convierte una columna a otro tipo de dato.
isnull(): detecta valores nulos en el DataFrame.
fillna(): reemplaza valores nulos con un valor especi­ficado.
dropna(): elimina filas o columnas con valores nulos.
str.re­place(): reemplaza patrones en texto dentro de una serie.
to_dat­etime(): convierte datos a formato de fecha y hora.

Renaming Combining

rename()
movies.re­nam­e(c­olu­mns­={'­title': 'movie­_ti­tle', 'relea­se_­year': 'relea­se_­year'}, inplac­e=True)
concat()
pd.con­cat­([m­ovi­es_­info, box_of­fice], axis=1)
set_in­dex()
movies.se­t_i­nde­x('id')
join()
movies.jo­in(­rev­iew­s.s­et_­ind­ex(­'id'))
df.ind­ex.name
movies.in­dex.name = 'movie­s_i­ndex'
df.col­umn­s.name
movies.co­lum­ns.name = 'movie­_at­tri­butes'
rename(): cambia nombres de columnas o índices en el DataFrame.
concat(): une múltiples DataFrames a lo largo de un eje.
set_in­dex(): establece una columna como índice del DataFrame.
join(): combina DataFrames usando el índice.
df.ind­ex.name: asigna o muestra el nombre del índice.
df.col­umn­s.name: asigna o muestra el nombre de las columnas.