Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!Vote for your favorite vizzies from the Power BI Dataviz World Championship submissions. Vote now!
Estoy intentando crear datos de lluvia virtuales para múltiples "sitios" utilizando combinaciones proporcionales variables de tres pluviómetros.
Mis datos se guardan en algunas tablas / listas en los siguientes formatos:
Lista de sitios:
Tabla de distribución de estaciones (aún no procesada, sin tipos de datos seleccionados, etc.):
Datos diarios de lluvia y otoño (tabla resumida a partir de datos por hora):
Me gustaría definir los valores de lluvia en el formato:
Precipitaciones en el sitio z = (precipitaciones en el sitio z calibre 1 * proporción del medidor 1 para el sitio z) + (precipitaciones en el sitio z calibre 2 * proporción del medidor 2 para el sitio z) + (precipitaciones en el sitio z calibre 3 * proporción del medidor 3 para el sitio z)
Me gustaría tener valores diarios para trazar de modo que, dependiendo de una segmentación de sitios (de selección única), se grafiquen los "datos de lluvia virtual" apropiados.
El modelo de datos actual es pequeño 1 año de datos diarios, ~ 40 sitios y 16 pluviómetros. Si puedo encontrar una solución limpia, buscaré expandir esto a más de 150 sitios y más de 10 años de datos de lluvia (potencialmente a una resolución por hora).
Preferiría crear esto usando DAX, pero potencialmente podría usar una solución de Power Query que cree un nuevo conjunto de datos de lluvia que pueda vincular directamente a la lista de 'sitios'. Para una solución DAX, no puedo averiguar cómo relacionar la lista de sitios con las asignaciones de indicadores (¿necesito despivotar la segunda tabla a 3 columnas, ID de sitio, ID de medidor, proporción? ¿Entonces se te ocurre algún cálculo que haga la ecuación anterior?
Comenzaría transformando la tabla de distribución de la estación para que esté en un formato utilizable. Copie los pasos que comienzan con UnpivotColumns en la consulta.
let
Source = Table.FromRows(
Json.Document(
Binary.Decompress(
Binary.FromText(
"Xc+9CsIwFAXgV5FMCqU0/2ZUR8GlgkPpENs7SK9tqRbx7U1uqxSXe0JIvpwUBduNNcKbJYxLbrOQRwCEkDmPQ4XhXOYkJbcupJQyHkyNFpRS0XaqtTGsTAq2h7r1iDManRO8+m54rta5x67fRFmEMaFaLx4hSNEyVTozcYtM9FWDvoFZFf9VF8ZckDoKYamjpRtEHfy9v3Xt6gzD4KsJzEz86QUQ4XHtxqElV/46bt3k2y+sjebUUaotweUH",
BinaryEncoding.Base64
),
Compression.Deflate
)
),
let
_t = ((type nullable text) meta [Serialized.Text = true])
in
type table [
Source_Name = _t,
SAP_SITE_ID = _t,
First_Station_Name = _t,
Second_Station_Name = _t,
Third_Station_Name = _t,
First_Station_Number = _t,
Second_Station_Number = _t,
Third_Station_Number = _t,
First_State_Proportion = _t,
Second_State_Proportion = _t,
Third_State_Proportion = _t
]
),
ChangeType = Table.TransformColumnTypes(
Source,
{
{"Source_Name", type text},
{"SAP_SITE_ID", Int64.Type},
{"First_Station_Number", Int64.Type},
{"Second_Station_Number", Int64.Type},
{"Third_Station_Number", Int64.Type},
{"First_State_Proportion", type number},
{"Second_State_Proportion", type number},
{"Third_State_Proportion", type number}
}
),
UnpivotColumns = Table.UnpivotOtherColumns(
ChangeType,
{"Source_Name", "SAP_SITE_ID"},
"Attribute",
"Value"
),
SplitColumn = Table.SplitColumn(
UnpivotColumns,
"Attribute",
Splitter.SplitTextByEachDelimiter({"_"}, QuoteStyle.Csv, false),
{"Attribute.1", "Attribute.2"}
),
PivotColumns = Table.Pivot(
SplitColumn,
List.Distinct(SplitColumn[Attribute.2]),
"Attribute.2",
"Value"
),
RemoveColumn = Table.RemoveColumns(PivotColumns, {"Attribute.1"}),
FilterNull = Table.SelectRows(RemoveColumn, each ([Station_Number] <> null)),
ChangeType2 = Table.TransformColumnTypes(
FilterNull,
{{"Station_Name", type text}, {"Station_Number", type text}, {"State_Proportion", type number}}
)
in
ChangeType2
Deberá proporcionar datos de muestra para la tabla Lluvia diaria (no una captura de pantalla).
Hi, @OllieSvT
No está completamente seguro de cuál es su pregunta, ¿puede elaborar un poco más lo que está tratando de hacer?
Los datos de muestra y los resultados esperados ayudarían enormemente.
Saludos
Equipo de soporte de la comunidad _ Eason
Vote for your favorite vizzies from the Power BI World Championship submissions!
If you love stickers, then you will definitely want to check out our Community Sticker Challenge!
Check out the January 2026 Power BI update to learn about new features.