March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Hola a todos
Soy nuevo en este foro. Acabo de presentar una nueva carrera como analista de negocios y estoy aprendiendo a usar Power BI. He limitado la experiencia previa con Power Queries.
Tengo un problema en el que quiero desapilar datos de una columna y poner los datos en una tabla. He visto numerosos videos de youtube sobre consultas de energía para desapilar datos usando un colum de índice. Mi problema es que el número de puntos de datos en mis datos apilados es desigual, por lo que la opción de índice no funciona para mí. es decir, mi primer bloque de datos en la columna A contiene 20 puntos de datos, mi segundo bloque de datos contiene 15 puntos de datos. Cada bloque de datos se separa mediante una fila en blanco si esto es beneficioso.
¿Hay una solución para desapilar los datos en la columna A para crear una tabla mediante Power Query?
Cualquier ayuda es muy apreciada.
Gracias de antemano.
Puede compartir datos de ejemplo y salida de muestra.
Hola
Perdón por el retraso. Ahora no estoy seguro de si desapilar la columna es la mejor solución. Volveré al principio para darle una breve descripción de mi problema y estoy abierto a cualquier posible solución.
Se adjunta un ejemplo de los datos de origen exportados para sobresalir desde un espectrofotómetro (utilizado para mezclar colores de pintura). Como se puede ver todos los datos se apilan en dos columnas. He incluido una breve descripción de los datos incluidos en cada fila de la primera tirada de color.
El espectrofotómetro produce un nuevo bloque de datos para cada tirada de color, que se separa del color anterior ejecutado por una fila en blanco. He inscuded dos corridas de color en la hoja adjunta. El problema es que puede haber 100 de color al día, todo con diferentes cantidades de colores mezclados.
Esperaba usar el poder Bi para los siguientes requisitos de presentación de informes;
Lo que es mejor era ordenar mis datos antes de usar técnicas de visulación en Power BI. He ordenado los datos manualmente y funciona bien, pero esto no es una solución para grandes archivos de Excel con cientos de corridas de color.
Cualquier puntero o ayuda sería muy apreciado.
Gracias de antemano @amitchandak
Hola @rayhannon ,
Tal vez usted puede probar los siguientes pasos y los códigos relacionados en el editor avanzado en el editor de consultas de energía y le ayudaré a entender:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("pVLLbsIwEPyVVc4E/IgT4GaCG1zyoIlpC4hD2iJRCbVS2h74+yZOnCgCpEo9emd21jO7u51FKXKsgWXtBztLHX+Kr7f8DAyivHg9AkEEGRDTqUOmxDPvZV4cPr6Xh9PpbEp+EiZpxJW/kHGATfX+8wUIowhkAAsOcxu1GpmIJERcKsCuTYgpXxJV8Z6frghgTOAuhJivuFokIaRiXkJoiKiLNIFovCxD8iznAjajTBMwYw3BqwgPaxnHbTdGqAap7l6J0lQsYgVJyuNA1BMMx0GdQMSDksabKWTIWpIWkmnAt7Kb02mMK3gjwjB5gtAm2EE1wTWEibGRKttjk7qfmH6m/zAbZe0P+vo6XWjSVqoE3c7kbQO4UzCBU8/5+7mwKR3//1xIq+H7sjfjkqHvhF5pLd1WLoNUiLgKqp8fpRXo83Qmt+UVPcokFKofwO2UnKHT7kHrrLNmlc0p4ltLKOWdqnP/Cw==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", type number}}),
#"Replaced Value" = Table.ReplaceValue(#"Changed Type","",null,Replacer.ReplaceValue,{"Column1"}),
#"Added Index" = Table.AddIndexColumn(#"Replaced Value", "Index", 1, 1),
#"Added Custom" = Table.AddColumn(#"Added Index", "Custom", each let i = [Index]
in
Table.RowCount(Table.SelectRows(#"Added Index",each [Index]<i and [Column1]=null and [Column2]=null))),
#"Grouped Rows" = Table.Group(#"Added Custom", {"Custom"}, {{"Data", each _, type table [Column1=text, Column2=number, Index=number, Custom=number]}}),
#"Added Custom1" = Table.AddColumn(#"Grouped Rows", "ShapedData", each let #"Sorted Rows" = Table.Sort([Data],{{"Index", Order.Ascending}}),
#"Added Index1" = Table.AddIndexColumn(#"Sorted Rows", "Index.1", 1, 1),
#"Removed Columns" = Table.RemoveColumns(#"Added Index1",{"Index", "Custom"})
in
Table.SelectRows(#"Removed Columns",each [Column1] <> null or [Column2] <> null)),
#"Added Custom2" = Table.AddColumn(#"Added Custom1", "Custom.1", each let job = [ShapedData]{0}[Column1],
dt = [ShapedData]{1}[Column1] & " "&[ShapedData]{2}[Column1]
in
Table.Skip(Table.AddColumn(Table.AddColumn([ShapedData],"Job Number",each job),"Date Time",each dt),3)),
#"Removed Columns" = Table.RemoveColumns(#"Added Custom2",{"Data", "ShapedData", "Custom"}),
#"Expanded Custom.1" = Table.ExpandTableColumn(#"Removed Columns", "Custom.1", {"Column1", "Column2", "Index.1", "Job Number", "Date Time"}, {"Custom.1.Column1", "Custom.1.Column2", "Custom.1.Index.1", "Custom.1.Job Number", "Custom.1.Date Time"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Expanded Custom.1",{{"Custom.1.Date Time", type datetime}, {"Custom.1.Job Number", Int64.Type}, {"Custom.1.Index.1", Int64.Type}, {"Custom.1.Column2", type number}, {"Custom.1.Column1", type text}})
in
#"Changed Type1"
Todos los pasos se pueden ver en los pasos aplicados en el derecho del editor de consultas de energía y puede utilizar el icono de engranaje para probar y comprobar:
Por último, el archivo de ejemplo adjunto espera ayudarle, por favor pruébelo: PBIX
Mejores looks,
Yingjie Li
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola @v-yingjl ,
Muchas gracias por tomarse el tiempo para responder con tanto detalle. Fue muy útil. ¿Puedo hacerle unas preguntas de seguimiento?
Gracias de nuevo por su ayuda. Es muy apreciado.
Atentamente.
raya
Hola @rayhannon ,
Es un placer🙂.
1. No ingresé estas columnas totales anteriormente becasuse pensé que se utilizan como referencia. Si desea importar desde Excel, puede quitar estas columnas directamente y mantener una fila en blanco entre dos bloques de datos.
2. Al crear columnas personalizadas, necesita usar algunas fórmulas que power bi le pedirá si ingresa las primeras letras de la fórmula en la página de columna Personalizada.
3. No es esencial poder escribir consultas de energía en M excepto crear algunas columnas personalizadas. Como he publicado anteriormente, puede hacer clic en el icono de engranaje para ver las acciones de detalle en Pasos aplicados y puede encontrar las acciones correspondientes en la barra de menús en la parte superior del editor de consultas de potencia.
Por ejemplo, el uso de la función agrupar por solo tiene que encontrar el icono Agrupar por en el menú. Puse todos los códigos en este post es sólo conveniente para presentar cada paso de resumen.
Si está interesado en la función de consulta M, puede hacer referencia a estos dos documets de microsoft como una comprensión sencilla:
4. Añadir columna personalizada1 es shapedata para eliminar la 'columna personalizada':
Agregar columna personalizada2 es omitir estas filas que pensé que se utiliza como algo sobre el número de trabajo y establecerlas como nuevas columnas para omitir estas filas anteriores (no columnas, lo siento por la publicación anterior)
Para este problema, extraijo las filas top3 y las considero dos 2 columnas nuevas (depende de su propia decisión) y elimino estas 3 filas seleccionadas
Mejores looks,
Yingjie Li
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.