我真的很困惑,为什么只显示False而不是0.8,因为第3列(Value3)有4个true和1个false。我读到它应该可以用平均值表示,但我无法解决
也许有人可以给我一点提示我做错了什么?
data = [
{
"Datum": "2019-05-11",
"Value1": True,
"Value2": 10,
"Value3": False,
"Value4": 20
},
{
"Datum": "2019-05-11",
"Value1": True,
"Value2": 20,
"Value3": True,
"Value4": 40
},
{
"Datum": "2019-05-11",
"Value1": True,
"Value2": 20,
"Value3": True,
"Value4": 40
},
{
"Datum": "2019-05-11",
"Value1": True,
"Value2": 10,
"Value3": True,
"Value4": 20
},
{
"Datum": "2019-05-11",
"Value1": True,
"Value2": 20,
"Value3": True,
"Value4": 40
},
{
"Datum": "2019-05-12",
"Value1": True,
"Value2": 30,
"Value3": True,
"Value4": 50
},
{
"Datum": "2019-05-12",
"Value1": True,
"Value2": 40,
"Value3": True,
"Value4": 60
}
]
df = pd.DataFrame(data)
ordered_df = df.groupby("Datum").agg("mean")
结果是:
ordered_df["Value3"]
Datum
2019-05-11 False
Name: Value3, dtype: bool
我希望这样:
Datum
2019-05-11 0.8
2019-05-12 1.0
Name: Value3, dtype: float64
编辑编辑编辑 有人可以尝试使用此数据吗?
比起我做DataFrame和groupby的东西...仍然不意味着布尔值
input_data = data["data"]
df = pd.DataFrame(input_data)
ordered_df = df.groupby("Datum").agg("mean")
ordered_df["Notabschaltung"]
还是一样
Datum
2019-11-12 False
Name: Notabschaltung, dtype: bool
答案 0 :(得分:1)
使用第二个示例,我确实得到了错误。
要解决此问题,您可以使用:
Pjax::end()
此会将True转换为1,将False转换为0,然后
SELECT DISTINCT section FROM modules WHERE area='First' ORDER BY lvl ASC
SELECT section FROM modules WHERE area='First' GROUP BY section ORDER BY lvl ASC
基准
2019-11-12 0.0
名称:Notabschaltung,dtype:int64