如何在第一个空格中拆分Power Query中的列?

时间:2017-02-10 15:59:37

标签: powerbi powerquery

我正在使用Power Query并且有一个名为LandArea的列;示例数据是" 123.5平方英里"。它是数据类型文本。我想删除" sq mi"部分所以我只有数字值123.5。我尝试使用替换功能替换" sq mi"有空白但不起作用,因为它查看整个文本。所以我尝试使用Split,我将其拆分为空间,并在下面生成此公式,它确实创建了一个新列,但所有值都为null。原始专栏仍有" 123.5平方英里"。

Table.SplitColumn(#"Reordered Columns1","LandArea",Splitter.SplitTextByDelimiter(" ", QuoteStyle.None),{"LandArea.1", "LandArea.2"})

当只分割最左边的分隔符时:

Table.SplitColumn(#"Reordered Columns1","LandArea",Splitter.SplitTextByEachDelimiter({" "}, QuoteStyle.None, false),{"LandArea.1", "LandArea.2"})

我也尝试过更改为QuoteStyle.Csv。知道如何才能让它发挥作用吗?

2 个答案:

答案 0 :(得分:0)

使用此选项创建自定义列:

= Table.AddColumn(
  #"Reordered Columns1",
  "NewColumn",
  each Text.Start([LandArea],Text.PositionOf([LandArea]," "))
)

更新: 每个人似乎都有“sq mi”

= Table.AddColumn(#"Changed Type", "Custom", each Text.Replace([LandArea]," sq mi",""),type number)

希望它有所帮助。

答案 1 :(得分:0)

这是我最终使用的:

Table.AddColumn(#"Reordered Columns1", "LandArea2", 
    each Text.Start([LandArea], Text.PositionOf([LandArea], "sq")-1))

我避免试图找到空白。