【问题标题】:Using Python to calculate aggregate values from a Json file使用 Python 从 Json 文件中计算聚合值
【发布时间】:2018-08-28 06:55:21
【问题描述】:

我从 json 文件进行手动计算并导入数据。我想使用 python 自动化这个过程。我希望根据 json 文件选择几个值进行计算。下面是示例 Json 文件,因此为了计算 SayDo 公式,我必须根据导演取总和(完成的故事点)/总和(提交的故事点)。在这种情况下导演“拉杰什”。能否请您指出正确的来源

样本数据集

{"saydo": [{"teamName": "EPAM Backend 1", "sprintName": "MF-S94", "director": "Rajesh", "location": "Ukraine",
            "vendors": "EPAM,FTE", "sayDo": 77, "saydoStatusMeassure": "Yellow", "saydoStatusMeassureNumber": 0,
            "commitedSayDo": 68, "commitedSaydoStatusMeassure": "Yellow", "commitedSaydoStatusMeassureNumber": 0,
            "commitedStories": 17, "completedStories": 16, "completedStoryPoints": 56, "commitedStoryPoints": 73,
            "completedSoryPointsWithoutAddedAfterSprintStart": 50, "incompletedStories": 5,
            "addedAfterSprintStartStories": 5, "removedStories": 1, "bugsPerDev": 0.75,
            "bugsStatusMeassureNumber": 0, "bugsStatusMeassure": "Yellow", "openBeforeSprintEndsBugs": 6,
            "membersCount": 12, "completedBugsCount": 9, "p3BugsStatusMeassureNumber": 1,
            "p3BugsStatusMeassure": "Green", "p3BugsCount": 1, "addedIssuesAfterSprintCount": 6,
            "completedInSprintCount": 9, "techDebtIsuuesCount": 3, "foundAndFixedBugsValue": 100,
            "foundAndFixedBugsStatusMeassureNumber": 1, "foundAndFixedBugsStatusMeassure": "Green",
            "afterProdStatusMeassureNumber": 1, "afterProdStatusMeassure": "Green", "bugsAfterProdCount": 0}]}

到目前为止我的代码是

import json

def test3():
with open('C:/Users/erpsaam/Desktop/say-do-statistics-MF-S82-MF-S94-2018-07-09--10-30.json') as f:
           d = json.load(f)
   print (d['saydo'][1]['director'])

test3()

【问题讨论】:

  • 您好,欢迎来到 StackOverFlow。您能否正确格式化您的示例数据集和代码?所以我们可以提供更多帮助。
  • 你能发布你想要的结果吗?
  • 下面是数据集

标签: python arrays json


【解决方案1】:
  1. 您的输入格式很奇怪:我看不出有什么意义 一本字典的一个列表的字典...

  2. 我会这样做:

    将熊猫导入为 pd

    d=pd.read_json('toto.json') # 用你的 json 文件替换 'toto.json'。 df=pd.DataFrame([d['saydo'][0]]) # 把这种尴尬的格式转换成普通的 pandas 数据帧

    (df.completedStoryPoints/df.commitedStoryPoints)[df.director=='Rajesh']

  3. 不确定是否完全理解问题:“正确来源”是什么意思?

【讨论】:

    【解决方案2】:

    您可以尝试使用 Pandas,请参阅 read_json。有很多聚合函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-10
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 2012-10-11
      • 1970-01-01
      相关资源
      最近更新 更多