Python中文
首页
教程
问答
标签
搜索
登录
注册
从ex解析和构建jsondata
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在尝试解析一个excel,以便使用xlrd将它与其他数据结合起来。你知道吗</p> <p>我在网上搜索了一个解决方案,但不管我怎么努力,都无法使它工作。如何用这些数据构建JSON对象?我提供了一个示例,说明了excel中的原始数据是什么样的,以及我希望对象是什么样的。你知道吗</p> <pre><code>Date User Hours Manager Category 2019-02-25 User1 4 Manager1 Category1 2019-04-01 User2 2 Manager1 Category1 2019-04-01 User2 3 Manager1 Category1 2019-04-01 User2 2 Manager1 Category2 2019-05-06 User3 3 Manager2 Category1 2019-01-07 User4 1 Manager3 Category2 2019-04-07 User2 4 Manager1 Category1 2019-01-21 User4 2 Manager3 Category2 2019-04-07 User2 2 Manager1 Category2 </code></pre> <p>我想要的数据是:</p> <pre><code>{ Manager1: { User1: {February: {Category1: 4}} User2: {April: {Category1: 9, Category2: 4}} }, *Manager2...* } </code></pre> <p>不用“二月”作为一个月的例子,简单的数字就可以了。我现在使用下面的代码将excel日期类型从“43570.0”格式转换为表示月份的数字</p> <pre><code>excel_date = int(row_values[0]) full_date = datetime.fromordinal(datetime(1900,1,1).toordinal() + excel_date -2) month = full_date.date().month </code></pre> <p>我能够逐行解析它,但我不知道如何将它作为一个对象组合在一起。因为在这个数据中有大约15k行,所以我想把upp每个值加上每个人的小时数</p> <p><code>object[manager][user][month][category] += hours</code></p> <p>但是我不知道我应该如何构建我的对象,因为我只收到关键错误。我试着添加一个defaultdict函数,但我还没能解决这个问题</p> <p>我现在用这段代码进行解析,但无法理解最后一部分:</p> <pre><code>for rownum in range(2, file_sh.nrows-1): row_values = file_sh.row_values(rownum) excel_date = int(row_values[0]) full_date = datetime.fromordinal(datetime(1900,1,1).toordinal() + excel_date -2) month = full_date.date().month manager = row_values[4] user = row_values[2] row_type = row_values[5] hours = row_values[3] print(month, manager, user, row_type, hours) returns: 2 Manager1 User1 Category1 4 </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>谢谢。你知道吗</p> <p>我为pandas、numpy和Python的其他数据科学库购买了Udemy课程。这似乎是一条路要走,即使我还没有经历过这一切,并解决了我最初的问题。你知道吗</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
2 回答
如何添加表示整数的擦边字符串?
7 回答
如何添加要在Bokeh中使用的新font.ttf文件?
10 回答
如何添加要显示的矩阵XY轴编号和XY轴
10 回答
如何添加计数?
2 回答
如何添加计数器函数?
5 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
3 回答
如何添加计数器来跟踪while循环中的月份和年份?
7 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
4 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
3 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
9 回答
如何添加评论拉梅尔亚姆
9 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
9 回答
如何添加谷歌地点自动完成到Flask?
5 回答
如何添加超时、python discord bot
3 回答
如何添加超过1dp的检查
4 回答
如何添加距离方法
8 回答
如何添加跟随游戏的敌人精灵
8 回答
如何添加路径以便python可以找到程序?
9 回答
如何添加身份验证/安全性以使用happybase访问HBase?
6 回答