订单文本和数字列
Order text and numbers column
我在 PowerBI 中有一个包含文本和数字的列,我想这样排序:
Date
J1
J2
J3
J4
J5
J6
J7
J8
J9
J10
J11
但是当我尝试那样排序(字母顺序)时,结果是这样的:
Date
J1
J10
J11
J2
J3
J4
J5
J6
J7
J8
J9
J2跟随J1而不是J10如何解决?我认为当只有数字时会发生同样的问题,1 之后的 10 但我想要 2...
您需要从数据中提取一些“可排序”信息。这取决于数据的格式。如果前缀始终相同(在本例中为 J
),则可以将其删除并将其余部分转换为数字。或者,如果前缀可以不同并且它对数据排序很重要,那么您可以用前导零填充数字后缀以使它们都具有相同的宽度(例如 J0001
、J0002
、 ..., J0010
, J0011
).添加一个 custom column with this sortable information and use Sort by column 来定义排序顺序。
因此在 Power Query 编辑器中添加以下自定义列之一:
Number.FromText(Text.End([Date], Text.Length([Date]) - 1))
获取数字后缀(确保列的类型是 Whole number
- 如果需要更改它),或:
Text.Start([Date], 1) & Text.End("00000000" & Text.End([Date], Text.Length([Date]) - 1), 8)
用前导零填充数字(在这种情况下为 8 位数字 - 这取决于数据中数字的范围)。
最后,您将有另一列如下所示:
然后转到您的报告,字段窗格中的 select Date
列并使用 Sort by column
定义如何对数据进行排序并选择您刚刚添加的自定义列:
之后,当您按此列排序时,它将使用您的自定义列来获取定义的排序顺序:
我在 PowerBI 中有一个包含文本和数字的列,我想这样排序:
Date
J1
J2
J3
J4
J5
J6
J7
J8
J9
J10
J11
但是当我尝试那样排序(字母顺序)时,结果是这样的:
Date
J1
J10
J11
J2
J3
J4
J5
J6
J7
J8
J9
J2跟随J1而不是J10如何解决?我认为当只有数字时会发生同样的问题,1 之后的 10 但我想要 2...
您需要从数据中提取一些“可排序”信息。这取决于数据的格式。如果前缀始终相同(在本例中为 J
),则可以将其删除并将其余部分转换为数字。或者,如果前缀可以不同并且它对数据排序很重要,那么您可以用前导零填充数字后缀以使它们都具有相同的宽度(例如 J0001
、J0002
、 ..., J0010
, J0011
).添加一个 custom column with this sortable information and use Sort by column 来定义排序顺序。
因此在 Power Query 编辑器中添加以下自定义列之一:
Number.FromText(Text.End([Date], Text.Length([Date]) - 1))
获取数字后缀(确保列的类型是 Whole number
- 如果需要更改它),或:
Text.Start([Date], 1) & Text.End("00000000" & Text.End([Date], Text.Length([Date]) - 1), 8)
用前导零填充数字(在这种情况下为 8 位数字 - 这取决于数据中数字的范围)。
最后,您将有另一列如下所示:
然后转到您的报告,字段窗格中的 select Date
列并使用 Sort by column
定义如何对数据进行排序并选择您刚刚添加的自定义列:
之后,当您按此列排序时,它将使用您的自定义列来获取定义的排序顺序: