dd.geih.filtrar#
- dane_data.geih.filtrar(df, filtros=None, poblacion=None)[fuente]#
Filas que cumplen los filtros y pertenecen a una población.
Es el formato de filtros que aceptan
serie_indicadores,serie_tabla,serie_frecuenciasyexportar.- Parámetros:
df (DataFrame) – Microdatos armonizados.
filtros (dict | None) –
{columna: [valores]}para conservar esos valores, o{columna: (mínimo, máximo)}para un rango con los extremos incluidos. Por ejemplo,{"sexo": ["Mujer"], "edad": (15, 28)}. Si la columna no existe (una variable que ese año no trae), ninguna fila cumple el filtro.poblacion (str | None) – Una de
POBLACIONES:"pet","fuerza_trabajo","ocupado","desocupado"o"inactivo".
- Devuelve:
Las filas que cumplen todo, o
dfmismo si todas cumplen.- Tipo del valor devuelto:
DataFrame
Notas
El resultado anota en
attrs["meses_por_anio"]cuántos meses tenía cada año antes de filtrar (si se filtra pormes, solo esos). Así, si el filtro deja un mes sin nadie,dd.tablaeindicadoreslo cuentan como 0 en el promedio mensual de los niveles, como el DANE, y dan lo mismo que las funcionesserie_*.Ejemplos
>>> import pandas as pd >>> import dane_data as dd >>> df = pd.DataFrame({"sexo": ["Mujer", "Hombre", "Mujer"], "edad": [17, 30, 45], "ocupado": [1, 1, 0]}) >>> dd.geih.filtrar(df, {"sexo": ["Mujer"], "edad": (15, 28)}) sexo edad ocupado 0 Mujer 17 1 >>> dd.geih.filtrar(df, poblacion="ocupado") sexo edad ocupado 0 Mujer 17 1 1 Hombre 30 1