从Oracle Service Cloud Right Now API(reference)导出的分析报告是具有以下格式的JSON文件:
{
"count": 2,
"name": "filename",
"columnNames": [
"Name1",
"Name2",
"Name3",
"Name4",
"Name5"
],
"rows":
[
[
"ValueColumn1Row1",
"ValueColumn2Row1",
"ValueColumn3Row1",
"ValueColumn4Row1",
"ValueColumn5Row1"
],
[
"ValueColumn1Row2",
"ValueColumn2Row2",
"ValueColumn3Row2",
"ValueColumn4Row2",
"ValueColumn5Row2"
]
],
"links":
[
{
"rel": "self",
"href": "https://somecompany.custhelp.com/services/rest/connect/v1.4/analyticsReportResults"
}
]
}
字符串
但是为了处理数据,我需要一个csv格式的表格。此示例中的报表有五列,其中两行是值。
| 名称2|名称3|名称4|名称5| Name5 |
| --|--|--|--| ------------ |
| ValueColumn2Row1| ValueColumn3Row1| ValueColumn4Row1| ValueColumn5Row1| ValueColumn5Row1 |
| ValueColumn2Row2| ValueColumn3Row2| ValueColumn4Row2| ValueColumn5Row2| ValueColumn5Row2 |
我尝试了Powerery Query和不同的在线转换器。但它们似乎没有将列名标识为标题并在列中设置相应的值。除了“链接”部分。
在人类语言中,我可以这样定义转换过程:
1.从“columnNames”定义列名
1.从“行”中读取值(每个项目每隔五行)
1.设置相应列中的每个值
1.将结果另存为CSV文件
但我的编程技能非常非常基础。我希望有人能告诉我如何做。
亲切问候
1条答案
按热度按时间im9ewurl1#
您可以在python和
pandas
库的帮助下轻松实现这一点。要安装:
字符串
然后创建一个python文件,包含以下内容:
型
脚本说明:
1.导入必要的库(pandas和json)。
1.阅读JSON数据。在本例中,我直接在脚本中定义了JSON数据。在您的情况下,您可以从文件中读取它。
1.将JSON数据转换为pandas DataFrame。这是pandas提供的表格数据结构,与数据库中的表非常相似。
1.将DataFrame写入CSV文件。index=False参数用于防止pandas写入行号。