我有DF:熊猫意味着(),用于多指标
CU Parameters 1 2 3
379-H Output Energy, (Wh/h) 0.045 0.055 0.042
349-J Output Energy, (Wh/h) 0.001 0.003 0
625-H Output Energy, (Wh/h) 2.695 1.224 1.272
626-F Output Energy, (Wh/h) 1.381 1.494 1.3
我想创建两个单独的DFS,通过在0电平(CU)分组索引获取列值的平均值:
DF1 :(379-H和625-H)
Parameters 1 2 3
Output Energy, (Wh/h) 1.37 0.63 0.657
DF2:(其余)
Parameters 1 2 3
Output Energy, (Wh/h) 0.69 0.74 0.65
我可以通过分组1平获得平均为所有使用:
df = df.apply(pd.to_numeric, errors='coerce').dropna(how='all').groupby(level=1).mean()
,但我怎么这些按0级组?
SOLUTION:
lightsonly = ["379-H", "625-H"]
df = df.apply(pd.to_numeric, errors='coerce').dropna(how='all')
mask = df.index.get_level_values(0).isin(lightsonly)
df1 = df[mask].groupby(level=1).mean()
df2 = df[~mask].groupby(level=1).mean()
编辑的溶液,使用上述 – wazzahenry
高兴布尔索引可以帮助,我想'DF1 = DF [掩模] .groupby(等级= 1).mean()'是相同作为'df1 = df [mask] .mean(level = 1)'。美好的一天! – jezrael