我已经使用 pandas 将一个 json 数组作为数据框加载到 python 中。我的python代码如下:
import json
import pandas as pd
jsontxt = pd.read_json ('array.json')
df = pd.DataFrame(jsontxt['Total-Hours'])
print(df)
输出如下:
Total-Hours
0 {'value': 3.0}
1 {'value': 2.0}
2 {'value': 1.0}
3 {'value': 5.0}
4 {'value': 3.0}
5 {'value': 5.0}
我想按总小时数对数据进行分组。如下所示:
val = df.groupby(['Total-Hours']).mean();
我的 JSON 如下:
[
{
"key" : "Jacob",
"doc_count" : 11,
"Total-Hours" : {
"value" : 3.0
},
"Calculated-Category" : {
"value" : 4.0
}
},
{
"key" : "AH",
"doc_count" : 2,
"Total-Hours" : {
"value" : 2.0
},
"Calculated-Category" : {
"value" : 1.0
}
},
{
"key" : "FJ",
"doc_count" : 1,
"Total-Hours" : {
"value" : 1.0
},
"Calculated-Category" : {
"value" : 4.0
}
},
{
"key" : "Helen",
"doc_count" : 1,
"Total-Hours" : {
"value" : 5.0
},
"Calculated-Category" : {
"value" : 2.0
}
},
{
"key" : "Test",
"doc_count" : 1,
"Total-Hours" : {
"value" : 3.0
},
"Calculated-Category" : {
"value" : 3.0
}
},
{
"key" : "John",
"doc_count" : 1,
"Total-Hours" : {
"value" : 5.0
},
"Calculated-Category" : {
"value" : 3.0
}
}
]
但是,这要求 Total-Hours 是数字的。实现这一目标的最佳方法是什么?