cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
whulsbergen
Helper I
Helper I

utilizar una medida de una mesa en otra

Para un proyecto COVID-19, estoy tratando de detemine el número de personas infectadas en un área de código postal, en función de su edad.

Conocido:

1 tabla:"Figuras NL RIVM por edad': infecciones por edad a escala nacional. " infectado" es holandés por infectados

He añadido una columna calculada para hacer la distribución de personas infectadas por categoría de edad.

Schermafbeelding 2020-04-10 om 08.33.53.png

Por ejemplo, 877 personas 80-84 años están infectadas, lo que es el 9,37% del total.

2: tabla 'Pacientes hospitalizados COVID-19': con número de personas infectadas por ciudad. Amsterdam, por ejemplo, tiene 990 infecciones.
Schermafbeelding 2020-04-10 om 08.39.52.png
Así que cuando el 9,37% de los 990 infectados tiene entre 80 y 84 años, eso significa que se espera que 92,7 personas de esa edad estén infectadas.
Y ahora quiero saber cuántas personas por edad por código postal están infectadas.
Para eso tengo la siguiente tabla:
Schermafbeelding 2020-04-10 om 08.59.54.png
Sé qué código postal pertenece a qué ciudad.
Entonces debería ser capaz de calcular el número de personas infectadas por código postal y por categoría de edad. ¡Pero cómo!
En Excel, fue fácil con muchas columnas y sumas adicionales, pero se puede hacer en Power BI. Lo siento por la pregunta abierta, espero que alguien pueda ayudar.
actualización: la solución se encontró con un número de postst a continuación aquí.

8 REPLIES 8
bheepatel
Resolver IV
Resolver IV

Hola @whulsbergen

Asumo que en su última tabla (Tabla 3) tiene las siguientes columnas: Grupo de edad, Código postal y población y desea tener otra columna que pueda indicarle el número de personas infectadas?

Lo que puede hacer es crear una cuarta columna en la Tabla 3 y utilizar la función LOOKUPVALUE(), donde puede buscar el % de la Tabla 1 haciendo coincidir el Grupo de edad de la Tabla 3 a la Tabla 1 de la siguiente manera:
Cuarta columna - LOOKUPVALUE("Table1"[edad infectada al total],'Table1'[Age Group], 'Table3'[Age])

Esto le dará un % de tasa de infección para cada fila en su Tabla 3. A continuación, puede crear una Quinta Columna para darle el número de personas infectadas:

Quinta Columna - Cuarta Columna * Población (número)

¡Espero que esto ayude!

Sí, estoy un poco más pequeño ahora, ese valor de búsqueda ayuda.

He añadido algunas columnas

[porcentaje leeftijd tot totaal] - lo que sugeriste. Pero entonces necesito saber cuántas personas infectadas de ese grupo de edad hay en la ciudad, cómo pueden realmente las personas de ese grupo de edad vivir en esa ciudad, y entonces puedo calcular el número de personas infectadas.

columna añadida [municipio] es ciudad que coincide con el código postal

columna añadida [besmet per stad] es el número de personas infectadas por ciudad

columna añadida: infectado por edad por municipio á 'número por código postal'[porcentaje de edad al total] *'número por código postal'[infectado por ciudad]

Pero ahora necesito saber cuántas personas por grupo de edad viven en una ciudad. En Excel usaría SUMIFS y filtraría por edad por fila y ciudad por fila. Así que la fila superior muestra el número total de "bevolking" para la edad 90-94 para Amsterdam. ¿Cómo hago esto?

Schermafbeelding 2020-04-10 om 10.30.12.png

Puede crear una nueva tabla que tenga una combinación distinta de City & Age Group de la siguiente manera:

Nueva tabla: RESUME('número por código postal', 'número por código postal'[municipio], 'número por código postal'[edad]).

En esta nueva tabla, puede crear dos nuevas columnas que darán a la población por grupo de edad por ciudad y el número de personas infectadas por grupo de edad por ciudad. Puede utilizar las siguientes funciones DAX para determinar las dos columnas:

Nueva columna: CALCULATE ( SUM( ), FILTER( ) ) )

Las funciones CALCULATE, SUM y FILTER servirán para el mismo propósito que SUMIFS y filtrarán en Excel.

Gracias por la ayuda hasta ahora!

Está funcionando en parte.

1. La mesa salió bien!:

Nueva Tabla: RESUME("número por código postal";' número por código postal'[municipio];' número por código postal'[edad])

2. primera columna calculada también.

población por grupo de edad por ciudad ?
CALCULAR(
SUM("número por código postal"[Población (número)]);
FILTRO ("número por código postal";" número por código postal'[municipio]'Nueva mesa'[municipio]);
FILTRO ("número por código postal";" número por código postal"[Edad] á 'Nueva tabla'[Edad]))

3. Pero el segundo parece sólo filtrar por la ciudad y no en el grupo de edad.

número de personas infectadas por grupo de edad por ciudad.
CALCULAR(
suma('Hospitalizado COVID-19 Pacientes'[Infectado]);
filter("número por código postal";" número por código postal"[Edad]''Nueva tabla'[Edad]);
filter("número por código postal";" número por código postal'[municipio] á 'Nueva mesa'[municipio]))
Schermafbeelding 2020-04-10 om 13.50.26.png
Ya casi estoy ahí, ¿qué estoy haciendo mal aquí?

Hola @whulsbergen

Tuve un remirador de los datos. En la Tabla 1, se le administran las infecciones por edad a escala nacional. A partir de ahí, se calcula un porcentaje que es el % de infecciones en un grupo de edad de infecciones totales. No se trata de % de infecciones en un grupo de edad de la población total de ese grupo de edad.

Si tomamos su ejemplo inicial, del grupo de edad 80-84: hay 2035 personas infectadas a nivel nacional, que es el 9,37% de todas las personas infectadas a nivel nacional. No es el 9,37% de la población nacional de grupos de edad de 80-84 años.

Como resultado, no creo que pueda multiplicar la población de una ciudad por grupo de edad a los porcentajes que ha calculado por grupo de edad. Debido a que los porcentajes son una proporción de personas infectadas por grupo de edad con respecto al número total de personas infectadas.

¿Espero que tenga sentido?

Gracias por la mirada minuciosa. Tiene sentido.

Dado es, por ejemplo, 900 personas infectadas en Amsterdam. Pero como la pirámide de edad es diferente de la nación, ¿cómo sabemos cómo se pueden dividir esas personas infectadas por categoría de edad?

Desde el punto de vista nacional, el 9,37% de las personas infectadas es de 80-84. Esto significa que el 9,37% de 900 a 84,33 personas infectadas están en esa categoría de edad.

En Amsterdam son 2535 personas de 80-84 años de edad.

En el área de código postal 1059 (en Amsterdam), hay 1059 personas de 80-84y. Eso es 1059/2535 - 41,7%

Eso significa que en ese código postal cabe esperar el 41,7% de 84,33 a 35,22 personas infectadas de 80-84.

El último comentario que dio pero eliminado hizo el truco. Sólo tuve que usar MAX en lugar de SUM

número de personas infectadas por grupo de edad por ciudad.
CALCULAR(
MAX("número por código postal"[infectado por edad por municipio]);
filter("número por código postal";" número por código postal'[Edad] á 'Nueva tabla'[Edad]);
filter("número por código postal";" número por código postal'[municipio] á 'Nueva mesa'[municipio]))
Terminaré esto cuando tenga tiempo en los días siguientes. Muchas gracias hasta ahora!

Eso tiene sentido - gracias por el ejemplo. Supongo que la suposición que hay es que la división de las personas infectadas en los diferentes códigos postales dentro de una ciudad es proporcional a la densidad de población 🙂

Tienes razón - SUM no habría sido correcto. Average o MAX habrían funcionado.

¡Me alegro de que haya funcionado!

Cambie la fórmula a:

CALCULAR(
suma ('número por código postal[infectado por edad por municipio]');
filter("número por código postal";" número por código postal"[Edad]''Nueva tabla'[Edad]);
filter("número por código postal";" número por código postal'[municipio] á 'Nueva mesa'[municipio]))

Helpful resources

Announcements
MBAS on Demand

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

July 2021 Update 768x460.png

Check it out!

Click here to read more about the July 2021 Updates

Power Query PA Forum 768x460.png

Check it out!

Did you know that you can visit the Power Query Forum in Power BI and now Power Apps

Urdu Hindi D365 Bootcamp 768x460.png

Urdu Hindi D365 Bootcamp

Dont miss our very own April Dunnam’s The Developer Guide to the Galaxy! Find out what the Power Platform has to offer for the traditional developer.

Top Solution Authors