将.json数据转换为电子表格的MATRIX

ath

我有一个〜200的代码清单,看起来像这样:

EB0016
EB0017
EB0018
EB0019
EB0021
EB0023
EB0024
EB0026
EB0027

通过我工作的系统,清单200中的各种“父”代码以及相应“子”代码的子集也来自相同的200列表,如下面的代码块所示,它们也放置在业务报告中。

为了解释下面的值,对于每个放置了父代码EB0016的报告,我们还会看到15.8%的时间的子代码EB0148,以及13.7%的时间的子代码EB0192,依此类推。每当看到代码EB0017时,放置,我们还看到EB0187放置时间为13.6%,依此类推。在下面的示例中,EB0016和EB0017是父值,我们可以看到子值以及十进制格式的百分比。

在json文件中,每个父代代码仅列出一次,因此有200个父代。对于200个父母中的每个父母,列出了孩子代码,每个孩子都有一个对应的十进制频率,显示我们看到特定孩子代码与父代码并排放置的频率。

父代码和子代码都来自相同的200列表,因此,我现在有了可以在其中创建完整矩阵的数据。

我的问题是,如何将这个json文件转换为csv文件,然后可以将其导入电子表格中?通常,我会尝试刺探一些代码,然后发布其他帮助,但是我已经完全陷入僵局,在经过大量搜索之后我什至会这样做。也许awk?

 {
   "EB0016": {
        "EB0148": 0.1581,
        "EB0192": 0.1372,
        "EB0135": 0.1177,
        "EB0147": 0.0867,
        "EB0110": 0.0822,
        "EB0107": 0.0697
    },
   "EB0017": {
        "EB0187": 0.1364,
        "EB0148": 0.1312,
        "EB0192": 0.093,
        "EB0147": 0.0847
    }
}

我想获取上面的json文件(我列出了2个父代码,但实际上大约有200个代码)并生成如下矩阵:

        EB0107  EB0110  EB0135  EB0147  EB0148  EB0187  EB0192
EB0016  0.0697  0.0822  0.1177  0.0867  0.1581  -       0.1372
EB0017  -       -       -       0.0847  0.1312  0.1364  0.093
肖恩

好的,我我已经解决了您想要的东西,这点jq(在Shell中使用JSON的事实上的标准工具)应该可以做到:

jq -r 'keys as $codes | 
       ((["Code"] + $codes),
        (to_entries | sort_by(.key)[] as $row |
         reduce $codes[] as $c ([$row.key]; . + [$row.value[$c]? // "-"]))) |
       @tsv' input_file.json

对于您的样本输入,它引以为傲

Code    EB0016  EB0017
EB0016  -   -
EB0017  -   -

因为您的父代码不会互相显示为子代码,但是如果确实显示,则您会看到相应的数字,而不是破折号。

更改@tsv@csv以获取您的问题的CSV输出(但不采样所需的输出)说。(请对此事保持一致,并提供相互匹配的示例输入和输出。这使回答问题变得非常容易)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

如何快速轻松地将电子表格数据转换为JSON?

来自分类Dev

将电子表格编号转换为列字母

来自分类Dev

如何将电子表格的“以字母命名”列坐标转换为整数?

来自分类Dev

使用GAS将Google电子表格转换为XLSX或ODS

来自分类Dev

Rails 4,将“ \ n”替换为“
” 用于Excel中的XML电子表格

来自分类Dev

Google Apps脚本-将数据从电子表格追加到文档模板中的表格

来自分类Dev

Google脚本+电子表格+打开时将整个表格转换为大写

来自分类Dev

如何将HTML表格转换为Excel电子表格

来自分类Dev

将Excel电子表格转换为JSON

来自分类Dev

Kendo电子表格在解析行值时将时间转换为十进制

来自分类Dev

根据列表将.xls / .xlsx电子表格转换为多个.csv

来自分类Dev

将json插入Google电子表格

来自分类Dev

如何将已经上传的Excel文件转换为Google的电子表格格式?

来自分类Dev

Excel将电子表格转换为html

来自分类Dev

使用GAS将Google电子表格转换为XLSX或ODS

来自分类Dev

Rails 4,将“ \ n”替换为“
” 用于Excel中的XML电子表格

来自分类Dev

将电子表格的行转换为单独的XML文件

来自分类Dev

如何将电子表格单元格转换为时间单位?

来自分类Dev

如何将Microsoft Excel Online电子表格链接转换为CSV?

来自分类Dev

将.XLSX电子表格转换为CSV的代码无法正常工作

来自分类Dev

如何将扫描的手写表转换为Excel电子表格?

来自分类Dev

如何将电子表格中所有单元格的文本转换为数字?

来自分类Dev

将 html 表格数据放入谷歌电子表格

来自分类Dev

如何在 Linux 中也通过更新链接将 Excel 电子表格 2007 转换为 pdf

来自分类Dev

将 DataFrame 格式化为面向行的 JSON 对象(电子表格样式的数据透视表)

来自分类Dev

将嵌套的 JSON 导入 Google 电子表格

来自分类Dev

将电子表格转换为文本的合理工具,一行=一页

来自分类Dev

将电子表格从文件夹转换为 PDF(保存到不同位置)

来自分类Dev

是否有将谷歌文档转换为谷歌电子表格的功能?

Related 相关文章

  1. 1

    如何快速轻松地将电子表格数据转换为JSON?

  2. 2

    将电子表格编号转换为列字母

  3. 3

    如何将电子表格的“以字母命名”列坐标转换为整数?

  4. 4

    使用GAS将Google电子表格转换为XLSX或ODS

  5. 5

    Rails 4,将“ \ n”替换为“
” 用于Excel中的XML电子表格

  6. 6

    Google Apps脚本-将数据从电子表格追加到文档模板中的表格

  7. 7

    Google脚本+电子表格+打开时将整个表格转换为大写

  8. 8

    如何将HTML表格转换为Excel电子表格

  9. 9

    将Excel电子表格转换为JSON

  10. 10

    Kendo电子表格在解析行值时将时间转换为十进制

  11. 11

    根据列表将.xls / .xlsx电子表格转换为多个.csv

  12. 12

    将json插入Google电子表格

  13. 13

    如何将已经上传的Excel文件转换为Google的电子表格格式?

  14. 14

    Excel将电子表格转换为html

  15. 15

    使用GAS将Google电子表格转换为XLSX或ODS

  16. 16

    Rails 4,将“ \ n”替换为“
” 用于Excel中的XML电子表格

  17. 17

    将电子表格的行转换为单独的XML文件

  18. 18

    如何将电子表格单元格转换为时间单位?

  19. 19

    如何将Microsoft Excel Online电子表格链接转换为CSV?

  20. 20

    将.XLSX电子表格转换为CSV的代码无法正常工作

  21. 21

    如何将扫描的手写表转换为Excel电子表格?

  22. 22

    如何将电子表格中所有单元格的文本转换为数字?

  23. 23

    将 html 表格数据放入谷歌电子表格

  24. 24

    如何在 Linux 中也通过更新链接将 Excel 电子表格 2007 转换为 pdf

  25. 25

    将 DataFrame 格式化为面向行的 JSON 对象(电子表格样式的数据透视表)

  26. 26

    将嵌套的 JSON 导入 Google 电子表格

  27. 27

    将电子表格转换为文本的合理工具,一行=一页

  28. 28

    将电子表格从文件夹转换为 PDF(保存到不同位置)

  29. 29

    是否有将谷歌文档转换为谷歌电子表格的功能?

热门标签

归档