Power BI para PMs
Medidas DAX listas para copiar en tus dashboards de producto y una guía de los tipos de combinación en Power Query.
Chuleta DAX
NPS
| Medida | Fórmula | Requiere |
|---|---|---|
| NPS Necesita las medidas Promoters, Detractors y Respondents | DIVIDE(([Promoters] - [Detractors]) * 100, [Respondents]) | Tabla Surveys con Score 0–10 |
| Promoters Puntuaciones 9–10 | CALCULATE(COUNTROWS(Surveys), Surveys[Score] >= 9) | Surveys[Score] |
| Detractors Puntuaciones 0–6 | CALCULATE(COUNTROWS(Surveys), Surveys[Score] <= 6) | Surveys[Score] |
| Respondents Todas las respuestas | COUNTROWS(Surveys) | Surveys |
CSAT
| Medida | Fórmula | Requiere |
|---|---|---|
| CSAT % % de satisfechos (4–5) | DIVIDE([CSAT Positive], [CSAT Respondents]) | Tabla Surveys con Score 1–5 |
| CSAT Positive Puntuaciones 4–5 | CALCULATE(COUNTROWS(Surveys), Surveys[Score] >= 4) | Surveys[Score] |
| CSAT Respondents Todas las respuestas | COUNTROWS(Surveys) | Surveys |
Ventas y clientes
| Medida | Fórmula | Requiere |
|---|---|---|
| Total Sales Ingresos totales | SUM(Sales[Amount]) | Sales[Amount] |
| Distinct Customers Clientes únicos que compran | DISTINCTCOUNT(Sales[CustomerId]) | Sales[CustomerId] |
Conversión
| Medida | Fórmula | Requiere |
|---|---|---|
| Signup→Purchase Conversion % Tasa lead → cliente | DIVIDE([Purchasers], [Signups]) | Tablas Users y Sales |
| Purchasers Clientes que han comprado | DISTINCTCOUNT(Sales[CustomerId]) | Sales[CustomerId] |
| Signups Nuevos usuarios registrados | DISTINCTCOUNT(Users[UserId]) | Users[UserId] |
Churn
| Medida | Fórmula | Requiere |
|---|---|---|
| Churn Rate % % de usuarios perdidos | DIVIDE([Churned Users], [Total Users]) | Tabla Users |
| Churned Users Usuarios con fecha de baja | CALCULATE(DISTINCTCOUNT(Users[UserId]), NOT ISBLANK(Users[ChurnDate])) | Users[ChurnDate] |
| Total Users Todos los usuarios | DISTINCTCOUNT(Users[UserId]) | Users[UserId] |
Inteligencia temporal
| Medida | Fórmula | Requiere |
|---|---|---|
| Sales YTD Ventas acumuladas del año | TOTALYTD([Total Sales], Dates[Date]) | Tabla de fechas |
| Sales PY Ventas del año anterior | CALCULATE([Total Sales], DATEADD(Dates[Date], -1, YEAR)) | Tabla de fechas |
| Sales YoY % Crecimiento interanual | DIVIDE([Sales YTD] - [Sales PY], [Sales PY]) | Tabla de fechas |
Soporte
| Medida | Fórmula | Requiere |
|---|---|---|
| Avg Resolution Time (hrs) Rendimiento del helpdesk | AVERAGE(Support[ResolutionHours]) | Tabla Support |
| First Contact Resolution % Calidad del soporte | DIVIDE(CALCULATE(COUNTROWS(Support), Support[ResolvedOnFirstContact] = TRUE()), COUNTROWS(Support)) | Tabla Support |
Backlog
| Medida | Fórmula | Requiere |
|---|---|---|
| RICE Score Métrica de priorización | DIVIDE(Backlog[Reach] * Backlog[Impact] * Backlog[Confidence], Backlog[Effort]) | Campos del backlog |
Tipos de join en Power Query
Inner join
Solo coincidencias
Filas cuya clave existe en ambas tablas.
Por ejemplo: Solo ventas de clientes que existen en la tabla Clientes.
Left outer join
Todas de la primera
Todas las filas de la primera tabla y datos de la segunda cuando coinciden.
Por ejemplo: Todas las ventas, aunque haya clientes no registrados (con nulos).
Right outer join
Todas de la segunda
Todas las filas de la segunda tabla más las coincidencias de la primera.
Por ejemplo: Todos los clientes, aunque no tengan ventas.
Full outer join
Todas de ambas
Todas las filas de ambas tablas, emparejando donde coinciden.
Por ejemplo: Todos los clientes y todas las ventas, coincidan o no.
Left anti join
Solo en la primera
Filas de la primera tabla sin coincidencia en la segunda.
Por ejemplo: Ventas cuyo cliente no está en la tabla Clientes.
Right anti join
Solo en la segunda
Filas de la segunda tabla sin coincidencia en la primera.
Por ejemplo: Clientes que nunca han comprado.