【问题标题】:Expand and combine power query扩展合并电量查询
【发布时间】:2021-07-15 05:41:20
【问题描述】:

我正在创建一个 Excel 电子表格,它提供有关输入股票的实时信息。这是通过在 Power Query 中使用 API 请求来完成的。

Json.Document(Web.Contents("https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?symbol=" & #"Added Index"{[Index]}[Column1]))

当我展开此选项卡时,它会将记录分隔为不同的列。 是否可以将所有分隔的列合并为一列?

【问题讨论】:

  • 我想先分离然后合并它们。您会在网络搜索中找到许多合并电源查询列的来源。喜欢this
  • @Naresh 如何将记录和空值组合在一起 -> 记录?
  • 你的逻辑是什么?你只有2列,当有null时,需要用其他列值填充?
  • @joey 首先,通过单击列顶部的箭头展开“记录”列..然后合并结果列..我认为我们不能直接合并记录。
  • 取消透视带有record 的列会将所有记录放在一个列中。

标签: excel api powerbi powerquery


【解决方案1】:

您可以从第 20 行开始根据您的场景调整以下内容

let
  Source = Table.FromRows(
    Json.Document(
      Binary.Decompress(
        Binary.FromText("i45WclSK1YlWclKKjQUA", BinaryEncoding.Base64), 
        Compression.Deflate
      )
    ), 
    let
      _t = ((type nullable text) meta [Serialized.Text = true])
    in
      type table [Column1 = _t]
  ), 
  #"Changed Type" = Table.TransformColumnTypes(Source, {{"Column1", type text}}), 
  #"Added Custom" = Table.AddColumn(
    #"Changed Type", 
    "Custom", 
    each [First = "First", Second = "Second"]
  ), 
  #"Added Custom1" = Table.AddColumn(
    #"Added Custom", 
    "Custom.1", 
    each 
      let
        x = [Custom], 
        L = Record.ToList(x), 
        Loop = List.Generate(
          () => [i = 0, j = 0, k = {L{0}}, comb = "0"], 
          each [i] < List.Count(L), 
          each [i = [i] + 1, j = i, k = {L{j}}, comb = Text.Combine(List.Combine({[k], k}), ",")], 
          each [comb]
        ), 
        c = Loop{List.Count(Loop) - 1}
      in
        c
  ), 
  #"Removed Columns" = Table.RemoveColumns(#"Added Custom1", {"Custom"})
in
  #"Removed Columns"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多