Jay*_*ran 3 json powerbi powerbi-desktop
我对 Power BI 完全陌生,所以我尝试了不同的方法将我的 JSON 文件转换为表格,但到目前为止没有成功。
{
"Family": [
{
"Father": "F1",
"Age": 50,
"Mother": "M1",
"MAge": 49,
"Children": [
{
"Name": "C1"
},
{
"Name": "C2"
}
]
},
{
"Father": "F2",
"Age": 55,
"Mother": "M2",
"MAge": 53,
"Children": [
{
"Name": "Cc1"
},
{
"Name": "Cc2"
}
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试将其转换为下表
Father Age Mother MAge
F1 50 M1 49
F2 55 M2 53
Run Code Online (Sandbox Code Playgroud)
我试过像转换表和转置这不起作用我总是得到一个错误
Expression.Error:我们无法将 Record 类型的值转换为类型
让我为那些不想使用 Power BI 用户界面(桌面/Web)编写 Power Query 和 jsut 的人分享分步指南。
打开 Power BI 桌面
获取数据?更多... ? 从列表中选择JSON,然后单击 Connect(您也可以使用 WEB API 或其他为您提供 JSON 数据的来源)
选择 JSON 文件并打开它。
在数据面板中,您会看到 Family|List。单击列表链接以添加导航步骤。
从 Transform 选项卡中,单击To Table并从对话框中单击OK。
从“Column1”的标题中,单击“展开列”按钮
要展开列并从菜单中取消选中使用原始列名称作为前缀并选中所需的列,然后单击确定。
最后你会得到这样的东西:
最后,如果您想查看生成的查询,请单击高级编辑器按钮并查看代码:
let
Source = Json.Document(File.Contents("C:\Users\rag\Desktop\data.json")),
Family = Source[Family],
#"Converted to Table" = Table.FromList(Family, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"Father", "Age", "Mother", "MAge"}, {"Father", "Age", "Mother", "MAge"}),
#"Changed Type" = Table.TransformColumnTypes(#"Expanded Column1",{{"Age", type number}, {"MAge", type number}})
in
#"Changed Type"
Run Code Online (Sandbox Code Playgroud)
更多信息:
我错过了功能步骤ExpandRecordColumn。在我将其放入我的查询中之后。成功了。
let
Source = Json.Document(File.Contents("C:\Users\hp\Desktop\File.JSON")),
Family = Source[Family],
#"Converted to Table" = Table.FromList(Family, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"Father", "Age", "Mother", "MAge", "Children"}, {"Father", "Age", "Mother", "MAge", "Children"})
in
#"Expanded Column1"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6453 次 |
| 最近记录: |