我正在尝试对Pandas中的分组数据执行操作。这是该数据集的视图,我想像我在下一行代码中所做的那样过滤我的数据框。我想自动创建,但是我不知道如何开始。您是否建议使用for循环或函数?
usu[["PONDERA","AGLOMERADO","PP03J","ESTADO","INTENSI"]].head(20)
PONDERA AGLOMERADO PP03J ESTADO INTENSI
0 861 2 NaN 3 NaN
1 861 2 NaN 3 NaN
2 861 2 NaN 3 NaN
3 861 2 NaN 3 NaN
4 861 2 NaN 4 NaN
5 861 2 NaN 4 NaN
6 861 2 NaN 3 NaN
7 861 2 NaN 4 NaN
8 861 2 1.0 1 3.0
9 861 2 NaN 4 NaN
10 861 2 2.0 1 3.0
11 861 2 NaN 3 NaN
12 514 2 2.0 1 2.0
13 503 2 2.0 1 3.0
14 503 2 NaN 3 NaN
15 503 2 2.0 1 3.0
16 919 2 NaN 3 NaN
17 919 2 NaN 3 NaN
18 888 2 2.0 1 2.0
19 888 2 2.0 1 1.0
pob = pob.groupby("AGLOMERADO")["PONDERA"].sum()
pob
pon_oc =usu[["PONDERA","ESTADO"]]
pon_oc = pon_oc["PONDERA"].loc[(usu['ESTADO'] == 1)]
pon_oc["AGLOMERADO"] = usu["AGLOMERADO"]
#pon_oc.info()
pon_oc = pon_oc.groupby("AGLOMERADO").sum()
#Poblacion desocuapada por aglomerados
pon_desoc =usu[["PONDERA","ESTADO"]]
pon_desoc = pon_desoc["PONDERA"].loc[(usu['ESTADO'] == 2)]
pon_desoc["AGLOMERADO"] = usu["AGLOMERADO"]
#pon_oc.info()
pon_desoc = pon_desoc.groupby("AGLOMERADO").sum()
#Poblacion ocupada demandante
pon_ocd =usu[["PONDERA","ESTADO","PP03J"]]
pon_ocd = pon_ocd["PONDERA"].loc[(usu['ESTADO'] == 1) & (usu["PP03J"] ==1)]
pon_ocd["AGLOMERADO"] = usu["AGLOMERADO"]
#pon_oc.info()
pon_ocd =pon_ocd.groupby("AGLOMERADO").sum()
pon_ocd
#Subocupados demandantes
pon_subocd =usu[["PONDERA","ESTADO","PP03J","INTENSI"]]
pon_subocd = pon_subocd["PONDERA"].loc[(usu['ESTADO'] == 1) & (usu["PP03J"] ==1) & (usu["INTENSI"] == 1)]
pon_subocd["AGLOMERADO"] = usu["AGLOMERADO"]
pon_subocd =pon_subocd.groupby("AGLOMERADO").sum()
pon_subocd```