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 datos como los siguientes:
Timestamp | Suscripciones |
2020-06-11 | sub1, sub2 |
2020-06-11 | sub2, sub3 |
2020-06-12 | sub5, sub6 |
2020-06-12 | sub5 |
Me gustaría poder trazar un gráfico que muestre el número de suscripciones únicas en cada marca de tiempo. Así que para la marca de tiempo 2020-06-11, el valor sería 3, y para la marca de tiempo 2020-06-12, el valor sería 2. ¿Es posible?
Hola @gopalv ,
Puede utilizar Power Query
Dejar
Source á Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjIwMtA1MNM1NFTSUSouTTLUUQCSRkqxOphyRmA5Y1Q5I4icKVjODLscCaImSrGxAA", BinaryEncoding.Base64), Compression.Deflate)), deje _t ((tipo de texto que acepta valores NULL) meta [Serialized.Text ? true]) en la tabla de tipos [Timestamp ? _t, ?"(blank)" ? _t]),
"Tipo de cambio" - Table.TransformColumnTypes(Source,"Timestamp", tipo date, "(en blanco)", escriba text-),
"Columnas renombradas" - Table.RenameColumns(-"Changed Type","(blank)", "Subscriptions" ?
SplittedCol á Table.TransformColumns('Columnas renombradas',''Subscriptions'', cada Text.Split(_,",")'),
"Suscripciones expandidas" - Table.ExpandListColumn(SplittedCol, "Subscriptions"),
"Texto recortado" - Table.TransformColumns("Suscripciones expandidas","Suscripciones", Texto.Recortar, escriba texto)
En
"Texto recortado"
Tabla Original : Han añadido algunos valores
Crear una medida simple
saludos
Harsh Nathani
¿He respondido a tu pregunta? ¡Marca mi puesto como una solución! Apreciar con un Kudos!! (Haga clic en el botón Pulgares arriba)
Hola @gopalv ,
También puede usar este código en Power Query
Dejar
Source á Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjIwMtA1MNM1NFTSUSouTTLUUQCSRkqxOphyRmA5Y1Q5I4icKVjODLscCaImSrGxAA", BinaryEncoding.Base64), Compression.Deflate)), deje _t ((tipo de texto que acepta valores NULL) meta [Serialized.Text ? true]) en la tabla de tipos [Timestamp ? _t, ?"(blank)" ? _t]),
"Tipo de cambio" - Table.TransformColumnTypes(Source,"Timestamp", tipo date, "(en blanco)", escriba text-),
"Columnas renombradas" - Table.RenameColumns(-"Changed Type","(blank)", "Subscriptions" ?
"Filas agrupadas" - Table.Group("Columnas renombradas", "Marca de tiempo", "a", cada Text.Combine([Subscriptions], ", "), escriba texto),
"Columnas renombradas1" - Table.RenameColumns(-"Filas agrupadas","a", "Combinado"-),
"RemovedDuplicates" á Table.TransformColumns ('Columnas renombradas1'",'Combinado', cada Text.Combine(List.Distinct(List.Transform(Text.Split(_,","), Text.Trim)),", ?)
En
"RemovedDuplicates"
Crear una medida
En mi ejemplo, tengo varias filas por marca de tiempo. ¿Este código seguiría funcionando en ese caso?
Hola @gopalv ,
Sí, lo hará.
El primer post.. Quita el delimitador y crea una nueva fila para cada marca de tiempo y, a continuación, realiza un RECUENTO DISTINCT.
El segundo post .. Combina las filas de una marca de tiempo determinada y, a continuación, elimina los duplicados y cuenta el no. de palabras.
saludos
Harsh Nathani
Preferiría una solución DAX, si es posible. La solución DAX dada no parece ser correcta y el problema con la división de suscripciones en PowerQuery es que la tabla resultante termina con valores de recuento doble o triple en otra columna (no se muestra) que representan el uso en todas las suscripciones en cada marca de tiempo.
Por ejemplo, empiezo con:
Timestamp | Suscripciones | Computetype | Uso (en todas las suscripciones) |
2020-06-11 | sub1, sub2 | Computación1 | 35 |
2020-06-11 | sub3, sub4 | Computación2 | 89 |
2020-06-12 | sub5, sub6 | Computación1 | 32 |
2020-06-12 | sub7, sub8 | Computación2 | 82 |
Su solución me dará una tabla que parece:
Timestamp | Suscripción | Calcular | Uso |
2020-06-11 | sub1 | Computación1 | 35 |
2020-06-11 | sub2 | Computación1 | 35 |
2020-06-11 | sub3 | Computación2 | 89 |
2020-06-11 | sub4 | Computación2 | 89 |
... | |||
2020-06-12 | sub8 | Computación2 | 82 |
Ahora, si trato de trazar el uso con el tiempo sin ningún filtro, de repente tendré el doble de uso en cada momento.
Hola
Para trazar el uso a lo largo del tiempo, arrastre Año/mes desde la tabla calendario y escriba este mwasure
•min(Datos[Uso])
Espero que esto ayude.
Hola @gopalv ,
En función de los requisitos que haya publicado, creo que tendrá que obtener su tabla en el formato correcto.
Para calcularlo una sola vez, puede crear un CC
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 | |
2 | |
2 | |
2 | |
1 |