【问题标题】:How to transpose multiple .csv files and combine in Excel power query?如何转置多个 .csv 文件并在 Excel 电源查询中组合?
【发布时间】:2019-09-05 12:37:05
【问题描述】:

我想分析一些光谱数据。 我有 ~6500 个 csv 文件
每个 .csv 文件都包含带有图片中显示的 fromat 的数据。

如何转置所有 csv 文件? ....那么....我可以在 powerQuery 中组合它们??

谢谢!

【问题讨论】:

  • SO 不是代码编写服务。这是一个很大的问题。您将需要使用 Power Query 的透视和反透视转换以及“从文件夹加载”。将其分解为多个步骤可能是有益的。分享您已解决的问题(并显示您的代码)以及您尝试但尚未解决的问题(显示您尝试的代码并解释失败的原因)也很有用。

标签: csv transpose powerquery


【解决方案1】:

这将读取目录中的所有 .csv 文件,为您转置和组合它们

使用主页...高级编辑器...粘贴到 PowerQuery 并使用适当的目录路径编辑第二行

基于 Alexis Olson 最近的回答 Reading the first n rows of a csv without parsing the whole file in Power Query

let
Source = Folder.Files("C:\directory\subdirectory\"),
#"Filtered Rows" = Table.SelectRows(Source, each ([Extension] = ".csv")),
#"Removed Other Columns" = Table.SelectColumns(#"Filtered Rows",{"Content", "Name"}),
#"Invert" = Table.TransformColumns(#"Removed Other Columns", {{"Content", each Table.Transpose(Csv.Document(_))}}),
MaxColumns = List.Max(List.Transform(#"Invert"[Content], each Table.ColumnCount(_))),
#"Expanded Content" = Table.ExpandTableColumn(#"Invert", "Content", List.Transform({1..MaxColumns}, each "Column" & Number.ToText(_))),
#"Promoted Headers" = Table.PromoteHeaders(#"Expanded Content", [PromoteAllScalars=true]),
#"Filtered Rows1" = Table.SelectRows(#"Promoted Headers", each ([Date] <> "Date"))
in #"Filtered Rows1"

【讨论】:

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