在 Power Query 中计算没有销售的平均天数 (M)
Calculating average days without sales in Power Query (M)
我想计算 table 没有销售的平均天数。我首先用 4 行进行测试,2 个客户,每个客户有 2 个销售和 2 个不同的日期(编辑:实际数据中会有超过 2 个日期):
我试过这个步骤:
let
Origen = Excel.CurrentWorkbook(){[Name="Tabla1"]}[Content],
#"Tipo cambiado" = Table.TransformColumnTypes(Origen,{{"Nombre", type text}, {"Fecha", type datetime}}),
#"Fecha extraída" = Table.TransformColumns(#"Tipo cambiado",{{"Fecha", DateTime.Date, type date}}),
#"Filas ordenadas" = Table.Sort(#"Fecha extraída",{{"Nombre", Order.Ascending}, {"Fecha", Order.Ascending}}),
#"Índice agregado" = Table.AddIndexColumn(#"Filas ordenadas", "Índice", 1, 1),
#"Columnas reordenadas" = Table.ReorderColumns(#"Índice agregado",{"Índice", "Nombre", "Fecha"}),
#"Columnas con nombre cambiado" = Table.RenameColumns(#"Columnas reordenadas",{{"Índice", "ID"}}),
#"Calculo Dias" = Table.AddColumn(#"Columnas con nombre cambiado", "Diff", each (try Date.From(#"Columnas con nombre cambiado"[Fecha]{[ID]-2})
otherwise Date.From([Fecha])) - [Fecha])
in
#"Calculo Dias"
但这并没有区分客户,也给了我负数:
也许我应该比较行并匹配客户端,但我不知道该怎么做。如果有更好的做法,请随时这样做。谢谢!
按Nombre
分组如下:
然后您可以将平均间隔天数定义为自定义列
= Number.From([MaxDate]-[MinDate])/([Count]-1)
我想计算 table 没有销售的平均天数。我首先用 4 行进行测试,2 个客户,每个客户有 2 个销售和 2 个不同的日期(编辑:实际数据中会有超过 2 个日期):
我试过这个步骤:
let
Origen = Excel.CurrentWorkbook(){[Name="Tabla1"]}[Content],
#"Tipo cambiado" = Table.TransformColumnTypes(Origen,{{"Nombre", type text}, {"Fecha", type datetime}}),
#"Fecha extraída" = Table.TransformColumns(#"Tipo cambiado",{{"Fecha", DateTime.Date, type date}}),
#"Filas ordenadas" = Table.Sort(#"Fecha extraída",{{"Nombre", Order.Ascending}, {"Fecha", Order.Ascending}}),
#"Índice agregado" = Table.AddIndexColumn(#"Filas ordenadas", "Índice", 1, 1),
#"Columnas reordenadas" = Table.ReorderColumns(#"Índice agregado",{"Índice", "Nombre", "Fecha"}),
#"Columnas con nombre cambiado" = Table.RenameColumns(#"Columnas reordenadas",{{"Índice", "ID"}}),
#"Calculo Dias" = Table.AddColumn(#"Columnas con nombre cambiado", "Diff", each (try Date.From(#"Columnas con nombre cambiado"[Fecha]{[ID]-2})
otherwise Date.From([Fecha])) - [Fecha])
in
#"Calculo Dias"
但这并没有区分客户,也给了我负数:
也许我应该比较行并匹配客户端,但我不知道该怎么做。如果有更好的做法,请随时这样做。谢谢!
按Nombre
分组如下:
然后您可以将平均间隔天数定义为自定义列
= Number.From([MaxDate]-[MinDate])/([Count]-1)