Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Tengo varios puntos de datos que son valores totalizados, a veces hay veces que se pierden datos. Estoy tratando de encontrar una manera de verificar que cada punto de datos es mayor que el anterior y luego si se encuentra el punto de datos que falta, el punto de datos se corrige tomando la siguiente buena lectura y la buena lectura anterior y luego dividiendo el valor por el número de puntos perdidos para obtener el cambio de cada punto de datos y agregando esto al punto bueno anterior para rellenar los datos que faltan. Hay 3 campos de datos que tendrían que utilizarse en la clasificación de puntos de datos. Fecha, nombre y valor. Hay varios nombres en la columna de nombre.
He estado mirando a R y la Biblioteca MICE para hacer esto, pero no puedo entenderlo.
Hora de la fecha | Nombre | Valor | ||
6/24/2020 07:00:00 | Datapoint1 | 1000 | ||
6/24/2020 08:00:00 | Datapoint1 | 1010 | ||
6/24/2020 09:00:00 | Datapoint1 | 1025 | ||
6/24/2020 10:00:00 | Datapoint1 | 0 | ||
6/24/2020 11:00:00 | Datapoint1 | 1045 | ||
6/24/2020 12:00:00 | Datapoint1 | 1057 | ||
6/24/2020 13:00:00 | Datapoint1 | 1069 |
Estoy tratando de encontrar una manera para que Power BI solucione el punto de datos faltante / incorrecto en el momento 6/24/2020 10:00:00. Lo que me gustaría que sucediera sería que toma el cambio y lo divide por el período para obtener el cambio de tiempo por período y luego lo agrega a la última buena lectura.
1045-1025 á 20
20/2 X 10
1025 + 10 x 1035
el punto de datos que falta es 1035 y quiero colocarlo en la tabla en el punto de valor para la hora de fecha afectada.
Inicialmente puse esta solicitud de ayuda en el servicio no en el escritorio. No estoy seguro de cómo mover la solicitud de ayuda origianal o cómo eliminarla.
Hola @moltra,
aquí está la solución de código M con sus datos de ejemplo:
// Table
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WckksSVUIycxNVdJR8ksEU2GJOaWpSrE60Upm+kYm+kYGRgYKBuZWBgZABJQG6kgsyM/MKzEEcgwNgGJoSi1wKTXEUGqJS6mRKZpSQwPsStGNNDTEZaQJhpFGuJSamqMrNcal1MxSKTYWAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column3 = _t, Column5 = _t]),
#"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
#"Changed Type1" = Table.TransformColumnTypes(#"Promoted Headers",{{"Date Time", type text}, {"Name", type text}, {"Value", Int64.Type}}),
#"Added Index" = Table.AddIndexColumn(#"Changed Type1", "Index", 0, 1),
#"Added Custom" = Table.AddColumn(#"Added Index", "Custom", each if [Value] = 0 then (#"Added Index"[Value]{[Index]-1} + #"Added Index"[Value]{[Index]+1}) / 2 else [Value]),
#"Changed Type2" = Table.TransformColumnTypes(#"Added Custom",{{"Custom", Int64.Type}})
in
#"Changed Type2"
Saludos FrankAT
mis datos reales tienen una columna de objeto que tiene más de 50 objetos diferentes. ¿Cómo incorporaría esto a tu código M? Cada objeto es único. Creo que una manera de hacer esto sería tener algo como un "bucle for" o lo que es comparable con el código M filtrando la tabla por cada objeto único.
Tendré que probar esto, podría ser más de una semana, de vacaciones a partir del viernes.
¿No entiendo de dónde sacas el Json?
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
1 | |
1 |