Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

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.

Reply
sudeng123
Employee
Employee

rango [mes n día] columna cronológicamente

así que aquí está mi problema, tengo un mes n día columna que se parece a Dic - 01, Oct - 02, Nov - 03, etc. i hecho esta columna haciendo una columna de nombre de mes, y luego una columna de día todo desde la columna de fecha original, luego concatenarlos en esta nueva columna de columna mes n día. Estoy tratando de clasificar esta columna en orden cronológico, aquí están el problema que encuentro con, esta columna tiene duplicados por lo que no se puede clasificar por otra columna, todas las otras columnas de fecha también tiene duplicados en ellos. Actualmente estoy haciendo este informe usando la conexión en vivo a un conjunto de datos en power bi service, tengo acceso a este conjunto de datos para que pueda modificarlo en cualquier momento que me guste. ¿cómo voy con esto? aquí están las capturas de pantalla . la primera imagen es la columna de fecha original que hice mi columna de mes, columna de día y columna de mes n día.fiscal drop date.PNGmonth n day.PNG

1 ACCEPTED SOLUTION
v-rzhou-msft
Community Support
Community Support

Ahí @sudeng123

Parece que tienes muchos meses en años diferentes.

Al igual que en enero de 2011 y 2012. Por lo tanto, si solo usa el mes n día, el mismo valor obtendrá diferentes rangos.

Así que mostrará el error.

Aquí tengo un consejo.

Mi tabla de muestra:

1.png

1. Puede probar la fecha / hora automática en la opción de escritorio para utilizar la fecha hierachy.

1.png

El resultado es el siguiente.

2.png

2. Es posible que deba agregar valor de año en su columna Día N del mes para distinguir el mismo valor en esta columna.

La nueva columna es Año Mes N Día.

Hago todo transformado en la consulta de energía.

let
    Source = Excel.Workbook(File.Contents("C:\Users\ricoz\Desktop\New Microsoft Excel Worksheet.xlsx"), null, true),
    Sheet32_Sheet = Source{[Item="Sheet32",Kind="Sheet"]}[Data],
    #"Promoted Headers" = Table.PromoteHeaders(Sheet32_Sheet, [PromoteAllScalars=true]),
    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"Date", type date}, {"Value", Int64.Type}}),
    #"Inserted Year" = Table.AddColumn(#"Changed Type", "Year", each Date.Year([Date]), Int64.Type),
    #"Inserted Month" = Table.AddColumn(#"Inserted Year", "Month", each Date.Month([Date]), Int64.Type),
    #"Inserted Day" = Table.AddColumn(#"Inserted Month", "Day", each Date.Day([Date]), Int64.Type),
    #"Inserted Month Name" = Table.AddColumn(#"Inserted Day", "Month Name", each Date.MonthName([Date], "en-001"), type text),
    #"Duplicated Column" = Table.DuplicateColumn(#"Inserted Month Name", "Month Name", "Month Name - Copy"),
    #"Duplicated Column1" = Table.DuplicateColumn(#"Duplicated Column", "Day", "Day - Copy"),
    #"Duplicated Column2" = Table.DuplicateColumn(#"Duplicated Column1", "Year", "Year - Copy"),
    #"Merged Columns" = Table.CombineColumns(Table.TransformColumnTypes(#"Duplicated Column2", {{"Year - Copy", type text}, {"Day - Copy", type text}}, "zh-CN"),{"Year - Copy", "Month Name - Copy", "Day - Copy"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Year Month N Day"),
    #"Sorted Rows" = Table.Sort(#"Merged Columns",{{"Date", Order.Ascending}}),
    #"Grouped Rows" = Table.Group(#"Sorted Rows", {"Date"}, {{"New", each _, type table [Date=nullable date, Value=nullable number, Year=number, Month=number, Day=number, Month Name=text, Year Month N Day=text]}}),
    #"Added Index" = Table.AddIndexColumn(#"Grouped Rows", "Index", 1, 1, Int64.Type),
    #"Expanded New" = Table.ExpandTableColumn(#"Added Index", "New", {"Value", "Year", "Month", "Day", "Month Name", "Year Month N Day"}, {"New.Value", "New.Year", "New.Month", "New.Day", "New.Month Name", "New.Year Month N Day"}),
    #"Renamed Columns" = Table.RenameColumns(#"Expanded New",{{"New.Value", "Value"}, {"New.Year", "Year"}, {"New.Month", "Month"}, {"New.Day", "Day"}, {"New.Month Name", "Month Name"}, {"New.Year Month N Day", "Year Month N Day"}, {"Index", "Rank"}})
in
    #"Renamed Columns"

El resultado es el siguiente.

2.png

Cree el objeto visual y ordene el Día N del Mes del Año por RANK.

3.png

O puede que necesite crear un valor de clasificación para el valor del día del mes.

Agrupe todas las filas por una columna personalizada Mes*100+Día en lugar de Fecha.

let
    Source = Excel.Workbook(File.Contents("C:\Users\ricoz\Desktop\New Microsoft Excel Worksheet.xlsx"), null, true),
    Sheet32_Sheet = Source{[Item="Sheet32",Kind="Sheet"]}[Data],
    #"Promoted Headers" = Table.PromoteHeaders(Sheet32_Sheet, [PromoteAllScalars=true]),
    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"Date", type date}, {"Value", Int64.Type}}),
    #"Inserted Year" = Table.AddColumn(#"Changed Type", "Year", each Date.Year([Date]), Int64.Type),
    #"Inserted Month" = Table.AddColumn(#"Inserted Year", "Month", each Date.Month([Date]), Int64.Type),
    #"Inserted Day" = Table.AddColumn(#"Inserted Month", "Day", each Date.Day([Date]), Int64.Type),
    #"Inserted Month Name" = Table.AddColumn(#"Inserted Day", "Month Name", each Date.MonthName([Date], "en-001"), type text),
    #"Duplicated Column" = Table.DuplicateColumn(#"Inserted Month Name", "Month Name", "Month Name - Copy"),
    #"Duplicated Column1" = Table.DuplicateColumn(#"Duplicated Column", "Day", "Day - Copy"),
    #"Merged Columns" = Table.CombineColumns(Table.TransformColumnTypes(#"Duplicated Column1", {{"Day - Copy", type text}}, "zh-CN"),{"Month Name - Copy", "Day - Copy"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Month N Day"),
    #"Added Custom" = Table.AddColumn(#"Merged Columns", "MonthDay", each [Month]*100+[Day]),
    #"Sorted Rows" = Table.Sort(#"Added Custom",{{"MonthDay", Order.Ascending}}),
    #"Grouped Rows" = Table.Group(#"Sorted Rows", {"MonthDay"}, {{"New", each _, type table [Date=nullable date, Value=nullable number, Year=number, Month=number, Day=number, Month Name=text, Month N Day=text, MonthDay=number]}}),
    #"Added Index" = Table.AddIndexColumn(#"Grouped Rows", "Index", 1, 1, Int64.Type),
    #"Expanded New" = Table.ExpandTableColumn(#"Added Index", "New", {"Date", "Value", "Year", "Month", "Day", "Month Name", "Month N Day"}, {"New.Date", "New.Value", "New.Year", "New.Month", "New.Day", "New.Month Name", "New.Month N Day"}),
    #"Removed Columns" = Table.RemoveColumns(#"Expanded New",{"MonthDay"}),
    #"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"New.Date", "Date"}, {"New.Value", "Value"}, {"New.Year", "Year"}, {"New.Month", "Month"}, {"New.Day", "Day"}, {"New.Month Name", "Month Name"}, {"New.Month N Day", "Month N Day"}, {"Index", "Rank"}})
in
    #"Renamed Columns"

4.png

El resultado es el siguiente.

5.pngPuede descargar el archivo pbix desde este enlace: rango [mes n día] columna cronológicamente

Saludos

Rico Zhou

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Ahí @sudeng123

¿Podría decirme si su problema ha sido resuelto? Si es así, acédi es la solución. Más gente se beneficiará de ello. O todavía está confundido al respecto, por favor proporcione más detalles sobre su tabla y su problema o compártame con su archivo pbix de su Onedrive for Business.

Saludos

Rico Zhou

v-rzhou-msft
Community Support
Community Support

Ahí @sudeng123

Parece que tienes muchos meses en años diferentes.

Al igual que en enero de 2011 y 2012. Por lo tanto, si solo usa el mes n día, el mismo valor obtendrá diferentes rangos.

Así que mostrará el error.

Aquí tengo un consejo.

Mi tabla de muestra:

1.png

1. Puede probar la fecha / hora automática en la opción de escritorio para utilizar la fecha hierachy.

1.png

El resultado es el siguiente.

2.png

2. Es posible que deba agregar valor de año en su columna Día N del mes para distinguir el mismo valor en esta columna.

La nueva columna es Año Mes N Día.

Hago todo transformado en la consulta de energía.

let
    Source = Excel.Workbook(File.Contents("C:\Users\ricoz\Desktop\New Microsoft Excel Worksheet.xlsx"), null, true),
    Sheet32_Sheet = Source{[Item="Sheet32",Kind="Sheet"]}[Data],
    #"Promoted Headers" = Table.PromoteHeaders(Sheet32_Sheet, [PromoteAllScalars=true]),
    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"Date", type date}, {"Value", Int64.Type}}),
    #"Inserted Year" = Table.AddColumn(#"Changed Type", "Year", each Date.Year([Date]), Int64.Type),
    #"Inserted Month" = Table.AddColumn(#"Inserted Year", "Month", each Date.Month([Date]), Int64.Type),
    #"Inserted Day" = Table.AddColumn(#"Inserted Month", "Day", each Date.Day([Date]), Int64.Type),
    #"Inserted Month Name" = Table.AddColumn(#"Inserted Day", "Month Name", each Date.MonthName([Date], "en-001"), type text),
    #"Duplicated Column" = Table.DuplicateColumn(#"Inserted Month Name", "Month Name", "Month Name - Copy"),
    #"Duplicated Column1" = Table.DuplicateColumn(#"Duplicated Column", "Day", "Day - Copy"),
    #"Duplicated Column2" = Table.DuplicateColumn(#"Duplicated Column1", "Year", "Year - Copy"),
    #"Merged Columns" = Table.CombineColumns(Table.TransformColumnTypes(#"Duplicated Column2", {{"Year - Copy", type text}, {"Day - Copy", type text}}, "zh-CN"),{"Year - Copy", "Month Name - Copy", "Day - Copy"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Year Month N Day"),
    #"Sorted Rows" = Table.Sort(#"Merged Columns",{{"Date", Order.Ascending}}),
    #"Grouped Rows" = Table.Group(#"Sorted Rows", {"Date"}, {{"New", each _, type table [Date=nullable date, Value=nullable number, Year=number, Month=number, Day=number, Month Name=text, Year Month N Day=text]}}),
    #"Added Index" = Table.AddIndexColumn(#"Grouped Rows", "Index", 1, 1, Int64.Type),
    #"Expanded New" = Table.ExpandTableColumn(#"Added Index", "New", {"Value", "Year", "Month", "Day", "Month Name", "Year Month N Day"}, {"New.Value", "New.Year", "New.Month", "New.Day", "New.Month Name", "New.Year Month N Day"}),
    #"Renamed Columns" = Table.RenameColumns(#"Expanded New",{{"New.Value", "Value"}, {"New.Year", "Year"}, {"New.Month", "Month"}, {"New.Day", "Day"}, {"New.Month Name", "Month Name"}, {"New.Year Month N Day", "Year Month N Day"}, {"Index", "Rank"}})
in
    #"Renamed Columns"

El resultado es el siguiente.

2.png

Cree el objeto visual y ordene el Día N del Mes del Año por RANK.

3.png

O puede que necesite crear un valor de clasificación para el valor del día del mes.

Agrupe todas las filas por una columna personalizada Mes*100+Día en lugar de Fecha.

let
    Source = Excel.Workbook(File.Contents("C:\Users\ricoz\Desktop\New Microsoft Excel Worksheet.xlsx"), null, true),
    Sheet32_Sheet = Source{[Item="Sheet32",Kind="Sheet"]}[Data],
    #"Promoted Headers" = Table.PromoteHeaders(Sheet32_Sheet, [PromoteAllScalars=true]),
    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"Date", type date}, {"Value", Int64.Type}}),
    #"Inserted Year" = Table.AddColumn(#"Changed Type", "Year", each Date.Year([Date]), Int64.Type),
    #"Inserted Month" = Table.AddColumn(#"Inserted Year", "Month", each Date.Month([Date]), Int64.Type),
    #"Inserted Day" = Table.AddColumn(#"Inserted Month", "Day", each Date.Day([Date]), Int64.Type),
    #"Inserted Month Name" = Table.AddColumn(#"Inserted Day", "Month Name", each Date.MonthName([Date], "en-001"), type text),
    #"Duplicated Column" = Table.DuplicateColumn(#"Inserted Month Name", "Month Name", "Month Name - Copy"),
    #"Duplicated Column1" = Table.DuplicateColumn(#"Duplicated Column", "Day", "Day - Copy"),
    #"Merged Columns" = Table.CombineColumns(Table.TransformColumnTypes(#"Duplicated Column1", {{"Day - Copy", type text}}, "zh-CN"),{"Month Name - Copy", "Day - Copy"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"Month N Day"),
    #"Added Custom" = Table.AddColumn(#"Merged Columns", "MonthDay", each [Month]*100+[Day]),
    #"Sorted Rows" = Table.Sort(#"Added Custom",{{"MonthDay", Order.Ascending}}),
    #"Grouped Rows" = Table.Group(#"Sorted Rows", {"MonthDay"}, {{"New", each _, type table [Date=nullable date, Value=nullable number, Year=number, Month=number, Day=number, Month Name=text, Month N Day=text, MonthDay=number]}}),
    #"Added Index" = Table.AddIndexColumn(#"Grouped Rows", "Index", 1, 1, Int64.Type),
    #"Expanded New" = Table.ExpandTableColumn(#"Added Index", "New", {"Date", "Value", "Year", "Month", "Day", "Month Name", "Month N Day"}, {"New.Date", "New.Value", "New.Year", "New.Month", "New.Day", "New.Month Name", "New.Month N Day"}),
    #"Removed Columns" = Table.RemoveColumns(#"Expanded New",{"MonthDay"}),
    #"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"New.Date", "Date"}, {"New.Value", "Value"}, {"New.Year", "Year"}, {"New.Month", "Month"}, {"New.Day", "Day"}, {"New.Month Name", "Month Name"}, {"New.Month N Day", "Month N Day"}, {"Index", "Rank"}})
in
    #"Renamed Columns"

4.png

El resultado es el siguiente.

5.pngPuede descargar el archivo pbix desde este enlace: rango [mes n día] columna cronológicamente

Saludos

Rico Zhou

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

amitchandak
Super User
Super User

@sudeng123 , Para ordenar el mes correctamente es necesario tener la columna de ordenación

en este caso parece que te gusta

Orden del mes de la fecha: formato([Fecha], "MMDD")

Marque esto como una columna de ordenación de su columna

Consulte mi video sobre esto: https://www.youtube.com/watch?v=KK1zu4MBb-c

O consulta el blog -https://docs.microsoft.com/en-us/power-bi/desktop-sort-by-column

parry2k
Super User
Super User

@sudeng123 comprobar mi entrada de blog de tabla de datos simple aquí y en este post también hablo de la clasificación de meses, y se puede utilizar la misma técnica aquí.

Consulta mi última entrada de blog Año-2020, Pandemia, Power BI y más allá para obtener un resumen de mis versiones favoritas de las características de Power BI en 2020

Me gustaría elogios si mi solución ayudara. 👉 Si puedes dedicar tiempo a publicar la pregunta, también puedes hacer esfuerzos para dar Felicitaciones a quien haya ayudado a resolver tu problema. ¡Es una muestra de agradecimiento!

Visítenos en https://perytus.com, su ventanilla única para proyectos/formación/consulta relacionadas con Power BI.



Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.