Manipulación de Datos con Pandas y R
June 24, 2020
Leer un Csv - Pandas
DFCOVID = pd.readcsv(‘./CasospositivosdeCOVID-19en_Colombia.csv’,encoding=‘utf-8’)
Leer un Csv - R
COVID19<- read.csv(“CasospositivosdeCOVID-19en_Colombia.csv”)
Tipo de dato - Pandas
type(DF_COVID)
Cuantas lineas y columnas tiene nuestro dataframe - Pandas
DF_COVID.shape
Cuantas lineas y columnas tiene nuestro dataframe - R
dim(COVID19)
Tipo de dato - Pandas
type(DF_COVID)
Tipo de dato - R
class(COVID19)
Visualizemos las columnas - Pandas
DF_COVID.columns
Visualizemos las columnas - R
colnames(COVID19_)
Convertir a Minúsculas - Pandas
df.column_name.str.lower()
df[‘column_name’].str.lower() DF_COVID[‘Ciudad de ubicación’].str.lower()
Convertir a Minúsculas - R
COVID19$Ciudad.de.ubicación <- tolower(COVID19$Ciudad.de.ubicación)
Reemplazar un cadena por otra - Pandas
DF_COVID[‘fecha reporte web’].replace(“T00:00:00.000”, "", regex=True)
Reemplazar un cadena por otra - R
COVID19$Fecha.diagnostico <-gsub(“T00:00:00.000”, "", COVID19$Fecha.diagnostico)
Convertir Date - Pandas
DFCOVID[‘fecha reporte web’] = pd.todatetime(DF_COVID[‘fecha reporte web’])
Convertir Date - R
COVID19Colombia$fecha.reporte.web <- as.Date(COVID19Colombia$fecha.reporte.web)
Colocar nombre a las columnas - Pandas
municipioscolombia.columns = [‘Codigo’, ‘Nombre’, ‘Codigodepartamento’, ‘Nombredepartamento’, ‘Latitud’, ‘Longitud’]
Colocar nombre a las columnas - R
municipioscolombia = read.table(“municipioscolombia.csv”, header=T, sep=”,” , dec=”.”) names (municipioscolombia)
names (municipioscolombia) = c(“Codigo”, “Nombre”, “Codigodepartamento”, “Nombredepartamento”, “Latitud”, “Longitud” ) names (municipioscolombia)
Creando una nueva fila en DF - Pandas
municipioscolombia.loc[“1102”] = [47980,“Zona Bananera”,47,“Magdalena”,“10.849993”,-74.060849 ]
Creando una nueva fila en DF - R
zb<-data.frame(Codigo=c(47980), Nombre=c(“Zona Bananera”), Codigodepartamento=c(47), Nombredepartamento=c(“Magdalena”), Latitud=c(“10.849993”), Longitud=c(-74.060849)) # Creando un DF con las nuevas oservaciones de Zona Bananera
municipioscolombia<-rbind(municipioscolombia,zb) # Uniendo los nuevos dataframe.
Unir dos DdataFrames - Pandas
pd.concat([DF_COVID,municipioscolombia], axis=1)
Ó
COVID19 = pd.merge(DFCOVID,municipioscolombia, lefton=“Código DIVIPOLA”, right_on=“Codigo”)
Unir dos DdataFrames - R
COVID19Colombia <- merge(COVID19Colombia, municipioscolombia, by.x=“Codigo”, by.y=“Codigo”, all.x=TRUE)
Eliminar columnas - Pandas
COVID19 = COVID19.drop([‘Codigo’, ‘Nombre’,‘Codigodepartamento’,‘Nombredepartamento’], axis=1)
Eliminar columnas - R
COVID19Colombia <- select(COVID19Colombia, -c(Nombre,Codigodepartamento, Nombredepartamento ))
Agrupar y summarise - Pandas
COVID19[‘COUNTER’] =1 #initially, set that counter to 1. byubicaten = COVID19.groupby([‘Ciudad de ubicación’,‘atención’])[‘COUNTER’].sum() #sum function print(byubicaten)
Ó
(COVID19.groupby([‘Ciudad de ubicación’, ‘atención’]).size() .sortvalues(ascending=False) .resetindex(name=‘count’) .drop_duplicates(subset=‘atención’))
Agrupar y summarise - R
byubicaten <- COVID19Colombia %>% groupby(COVID19Colombia$Ciudad.de.ubicación, COVID19Colombia$atención ) byatencion <- byubicaten %>% summarise(n = n()) byatencion
filter - Pandas
COVID19.query(‘COUNTER == 1 & atención ==“Casa”‘)
filter - R
byquindio <- filter(COVID19Colombia, COVID19_Colombia$Departamento.o.Distrito == “Quindío” )
Pivot - Pandas
Aten.pivottable(index=‘Ciudad de ubicación’, columns=‘atención’, values=‘count’, fillvalue=0)
Pivot - R
pivotwider(namesfrom = “COVID19Colombia$atención”, valuesfrom = “n”, values_fill = list(n = 0))