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

Masaje de datos para la exportación de encuestas - Género

Luchando para encontrar una manera de manipular los datos de la encuesta en una sola columna.

Actualmente hay 76 columnas diferentes en esta exportación, y tratando de reducir siempre que sea posible.

Pregunta: ¿hay alguna manera de combinar el género (Col11-14) en una sola columna? Bono por no usar DAX si es posible.

Instantánea de la tabla

carlG_0-1597029586466.png


gracias de antemano por cualquier consejo

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted

@carlG - Prueba esto:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCs9ILFHILFaozC8tUkhPzUtJLVLSUVKA41idaCW31NzEnFQg1xdC+ZdkgFUFJYIYCnn5JQrFiZVgpS6pufnpRYkFGZnJGMYo4BUxBIsYYlVjiCKCqQYkAkWxsQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"(blank)" = _t, #"(blank).1" = _t, #"(blank).2" = _t, #"(blank).3" = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"(blank)", type text}, {"(blank).1", type text}, {"(blank).2", type text}, {"(blank).3", type text}}),
    #"Filtered Rows" = Table.SelectRows(#"Changed Type", each ([#"(blank)"] <> "Demographic" and [#"(blank)"] <> "What is your gender")),
    #"Promoted Headers" = Table.PromoteHeaders(#"Filtered Rows", [PromoteAllScalars=true]),
    #"Changed Type1" = Table.TransformColumnTypes(#"Promoted Headers",{{"Female", type text}, {"Male", type text}, {"Other", type text}, {"Rather not say", type text}}),
    #"Replaced Value" = Table.ReplaceValue(#"Changed Type1","1","Female",Replacer.ReplaceText,{"Female"}),
    #"Replaced Value1" = Table.ReplaceValue(#"Replaced Value","1","Male",Replacer.ReplaceText,{"Male"}),
    #"Replaced Value2" = Table.ReplaceValue(#"Replaced Value1","1","Other",Replacer.ReplaceText,{"Other"}),
    #"Replaced Value3" = Table.ReplaceValue(#"Replaced Value2","1","Rather not say",Replacer.ReplaceText,{"Rather not say"}),
    #"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Replaced Value3", {}, "Attribute", "Value"),
    #"Removed Columns" = Table.RemoveColumns(#"Unpivoted Columns",{"Attribute"}),
    #"Filtered Rows1" = Table.SelectRows(#"Removed Columns", each ([Value] <> "" and [Value] <> " ")),
    #"Renamed Columns" = Table.RenameColumns(#"Filtered Rows1",{{"Value", "What is your gender"}})
in
    #"Renamed Columns"

---------------------------------------

@ me in replies or I'll lose your thread!!!

I have a NEW book! 
DAX Cookbook from Packt
Over 120 DAX Recipes!




Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




View solution in original post

7 REPLIES 7
Highlighted
Super User IV
Super User IV

@carlG - Bueno, lo obvio sería despivo esas cuatro columnas, pero siento que has suministrado como el 10% de un problema. No es realmente suficiente información para seguir adelante, por favor primero compruebe si su problema es un problema común enumerado aquí: https://community.powerbi.com/t5/Community-Blog/Before-You-Post-Read-This/ba-p/1116882

Además, consulte este post sobre cómo obtener respuesta a su pregunta rápidamente: https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490

Las partes más importantes son:
1. Datos de muestra como texto, utilice la herramienta de tabla en la barra de edición
2. Salida esperada de los datos de muestra
3. Explicación en palabras de cómo obtener de 1. a 2.


---------------------------------------

@ me in replies or I'll lose your thread!!!

I have a NEW book! 
DAX Cookbook from Packt
Over 120 DAX Recipes!




Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Highlighted
Super User IV
Super User IV

@carlG , Unpivot

https://radacad.com/pivot-and-unpivot-with-power-bi
Transponer : https://yodalearning.com/tutorials/power-query-helps-transposing-data/



Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
Dashboard of My Blogs !! YouTube Channel !! Connect on Linkedin

Proud to be a Super User!

Highlighted

Disculpas @Greg_Deckler buena sugerencia, intente 2 a continuación.
Problema con la combinación de datos.


Datos de tabla de ejemplo como texto:

¿Cuál es su género
MujermasculinoOtroMás bien no decir
Demográfica
1
1
1
1
1

Resultado esperado

¿Cuál es su género
Más bien no decir
Mujer
masculino
Mujer
Mujer

Notas:

conjunto de datos que se espera que alcancen los registros de 10K+ al final de cada año (Mis estudiantes de secundaria completan la encuesta al final de cada clase)

Este problema existe varias veces a lo largo de la exportación CSV de 76 columnas.

Highlighted

@amitchandak Gracias por la sugerencia,
Desafortunadamente, cuando despirezco, me quedo con lagunas en mis datos, y la agrupación por filas no parece retener los otros datos

Muestra de datos unpivoted

Identificación única del participante¿Cuál es su género
402439
402439
402439
402439
419083
419083
419083
419083Más bien no decir
406325Mujer
406325
406325
406325
406329
406329masculino
406329
406329
406332Mujer
406332
406332
406332
406334Mujer
Highlighted

@carlG - Prueba esto:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCs9ILFHILFaozC8tUkhPzUtJLVLSUVKA41idaCW31NzEnFQg1xdC+ZdkgFUFJYIYCnn5JQrFiZVgpS6pufnpRYkFGZnJGMYo4BUxBIsYYlVjiCKCqQYkAkWxsQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"(blank)" = _t, #"(blank).1" = _t, #"(blank).2" = _t, #"(blank).3" = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"(blank)", type text}, {"(blank).1", type text}, {"(blank).2", type text}, {"(blank).3", type text}}),
    #"Filtered Rows" = Table.SelectRows(#"Changed Type", each ([#"(blank)"] <> "Demographic" and [#"(blank)"] <> "What is your gender")),
    #"Promoted Headers" = Table.PromoteHeaders(#"Filtered Rows", [PromoteAllScalars=true]),
    #"Changed Type1" = Table.TransformColumnTypes(#"Promoted Headers",{{"Female", type text}, {"Male", type text}, {"Other", type text}, {"Rather not say", type text}}),
    #"Replaced Value" = Table.ReplaceValue(#"Changed Type1","1","Female",Replacer.ReplaceText,{"Female"}),
    #"Replaced Value1" = Table.ReplaceValue(#"Replaced Value","1","Male",Replacer.ReplaceText,{"Male"}),
    #"Replaced Value2" = Table.ReplaceValue(#"Replaced Value1","1","Other",Replacer.ReplaceText,{"Other"}),
    #"Replaced Value3" = Table.ReplaceValue(#"Replaced Value2","1","Rather not say",Replacer.ReplaceText,{"Rather not say"}),
    #"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Replaced Value3", {}, "Attribute", "Value"),
    #"Removed Columns" = Table.RemoveColumns(#"Unpivoted Columns",{"Attribute"}),
    #"Filtered Rows1" = Table.SelectRows(#"Removed Columns", each ([Value] <> "" and [Value] <> " ")),
    #"Renamed Columns" = Table.RenameColumns(#"Filtered Rows1",{{"Value", "What is your gender"}})
in
    #"Renamed Columns"

---------------------------------------

@ me in replies or I'll lose your thread!!!

I have a NEW book! 
DAX Cookbook from Packt
Over 120 DAX Recipes!




Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




View solution in original post

Highlighted

Impresionante @Greg_Deckler, ahora sé cómo @amitchandak pretendía.

¿Cómo manejaría un campo que no tiene datos?
es decir, el participante 402439 ha sido eliminado del conjunto de datos, ya que decidió no responder a la pregunta de género. (No se le permite hacer una pregunta de encuesta requerida)

Highlighted

@carlG - Eso depende de ti. Una vez más, siento que me están dando alrededor del 10% de la información requerida a un problema mucho mayor. Podría crear una quinta columna "No Reponse" que comprobaría si las otras cuatro columnas son nulas y, si es así, devolver "No Reponse" para esa fila, de lo contrario sería null. ¿Entonces despenta rías esas 5 columnas en lugar de 4?


---------------------------------------

@ me in replies or I'll lose your thread!!!

I have a NEW book! 
DAX Cookbook from Packt
Over 120 DAX Recipes!




Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Helpful resources

Announcements
Community Conference

Power Platform Community Conference

Check out the on demand sessions that are available now!

Community Conference

Microsoft Power Platform Communities

Check out the Winners!

secondImage

Create an end-to-end data and analytics solution

Learn how Power BI works with the latest Azure data and analytics innovations at the digital event with Microsoft CEO Satya Nadella.

Top Solution Authors