Power BI Power Query中API JSON数据转表格的关联匹配问题求助
问题:Power Query中API JSON数据转换时的列关联错误
我需要在Power BI的Power Query中将API获取的JSON数据转换为表格。API查询结果为列表类型,转换为表格后,ID列正常,但power、wind_speed、times列均为数据列表;展开power列后ID重复属于正常情况,但继续展开wind_speed和times列时,数据未按行关联,wind_speed与power数据在不同日期出现重复。而在原始JSON中,每个ID对应的DATA、WIND_SPEED、POWER数据集是正确关联的。我尝试过使用Power BI自带的Power Query转换函数,但转换过程中仍出现数据关联错误的问题。
以下是当前使用的Power Query完整代码:
let // Definir os dados JSON json = [ api_token = "cb8551da59dbdf91be8371df4a03dddb", power_source = "wind", id = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40}, variables = {"wind_speed", "power"}, end_date = "20240601", integration = "daily" ], // Converter o JSON em uma string JSON formatada jsonString = Text.FromBinary(Json.FromValue(json)), // Definir a URL url = "https://api.tempook.com/geracao/v1/forecast/multiforecast/range/integration", // Obter os dados da API usando o método POST response = Web.Contents( url, [ Headers = [ #"Content-Type"="application/json" ], Content = Text.ToBinary(jsonString), ManualStatusHandling={405} ] ), // Converter a resposta JSON em uma tabela jsonResponse = Json.Document(response), #"Convertido para Tabela" = Record.ToTable(jsonResponse), Value = #"Convertido para Tabela"{0}[Value], #"Convertido para Tabela1" = Table.FromList(Value, Splitter.SplitByNothing(), null, null, ExtraValues.Error), #"Column1 Expandido" = Table.ExpandRecordColumn(#"Convertido para Tabela1", "Column1", {"id", "power", "wind_speed", "times"}, {"Column1.id", "Column1.power", "Column1.wind_speed", "Column1.times"}), #"Column1.power Expandido" = Table.ExpandListColumn(#"Column1 Expandido", "Column1.power"), #"Column1.wind_speed Expandido" = Table.ExpandListColumn(#"Column1.power Expandido", "Column1.wind_speed"), #"Column1.times Expandido" = Table.ExpandListColumn(#"Column1.wind_speed Expandido", "Column1.times") in #"Column1.times Expandido"
内容的提问来源于stack exchange,提问作者Bruno Andrade
相关产品推荐
相关产品推荐

