Reply
Highlighted
Frequent Visitor
Posts: 10
Registered: ‎08-12-2016
Accepted Solution

Convert 24 HR time

[ Edited ]

Hi,

 

I have a column of time data in 24 Hr time:

 

Time

625

844

1241

1556

 

 

Where 625 is 06:25 AM.

 

How can I convert this into a usable form for PowerBI?

 

Thank you,

 

 


Accepted Solutions
Super Contributor
Posts: 5,329
Registered: ‎07-11-2015

Re: Convert 24 HR time

The first formula I supplied is DAX. That is the one that starts with "Column =". You use that version after you have run your query and are out of the Query Editor window and in Power BI Desktop. You go to the Data tab (middle icon on the left) and go to "Modeling" and then "New Column". That is where you would use the FIRST formula.

 

The SECOND formula is when you are in the Query Editor window and go to "Add Column" in the ribbon and then New Column. You seem to be using the DAX query when you should be using the M query and using the M query when you should be using the DAX query.

View solution in original post


All Replies
Super Contributor
Posts: 5,329
Registered: ‎07-11-2015

Re: Convert 24 HR time

Column = CONCATENATE(CONCATENATE(LEFT([Time],LEN([Time])-2),":"),RIGHT([Time],2))
Frequent Visitor
Posts: 10
Registered: ‎08-12-2016

Re: Convert 24 HR time

I received the following message: Expression error: The name 'CONCATENATE' wasn't recognized. Make sure it's spelled correctly.

Super Contributor
Posts: 5,329
Registered: ‎07-11-2015

Re: Convert 24 HR time

That would be because you were trying to enter a DAX formula into the Query Editor, which uses "M". Import your data and then in the Data tab, go to Modeling in the ribbon and "New Column". I'll see if I can post the equivalent M formula, but please note that you are posting to a forum on DAX Tips and Tricks, not Power Query "M" Tips and Tricks.

Super Contributor
Posts: 5,329
Registered: ‎07-11-2015

Re: Convert 24 HR time

[ Edited ]

M code version:

 

= Text.Middle(Text.From([Time]),0,Text.Length(Text.From([Time])) - 2) & ":" & Text.Middle(Text.From([Time]),Text.Length(Text.From([Time]))-2,2)

 

This assumes that your original data is a Number, hence the Text.From functions. If you have converted it to Text, you don't need those although the formula as presented will work with either Text or Number as the original data type for [Time] column. 

Frequent Visitor
Posts: 10
Registered: ‎08-12-2016

Re: Convert 24 HR time

[ Edited ]

I received the following error:

 

The syntax for '.' is incorrect. (DAX(Text.Middle(Text.From([ACTUAL_TIME]),0,Text.Length(Text.From([ACTUAL_TIME])) - 2) & ":" & Text.Middle(Text.From([ACTUAL_TIME]),Text.Length(Text.From([ACTUAL_TIME]))-2,2))).

 

 

error.JPG

Frequent Visitor
Posts: 10
Registered: ‎08-12-2016

Re: Convert 24 HR time

Is it still M or DAX?

Super Contributor
Posts: 5,329
Registered: ‎07-11-2015

Re: Convert 24 HR time

The first formula I supplied is DAX. That is the one that starts with "Column =". You use that version after you have run your query and are out of the Query Editor window and in Power BI Desktop. You go to the Data tab (middle icon on the left) and go to "Modeling" and then "New Column". That is where you would use the FIRST formula.

 

The SECOND formula is when you are in the Query Editor window and go to "Add Column" in the ribbon and then New Column. You seem to be using the DAX query when you should be using the M query and using the M query when you should be using the DAX query.

Frequent Visitor
Posts: 10
Registered: ‎08-12-2016

Re: Convert 24 HR time

[ Edited ]

For the first I receive the following error:

 

An argument of function 'LEFT' has the wrong data type or has an invalid value.

 

 

What's the difference beteen DAX and M?

 

 

Super Contributor
Posts: 5,329
Registered: ‎07-11-2015

Re: Convert 24 HR time

What is the data type of your "Time" column? Is your Time column called "Time"? I tested with the Time column being Whole Number and Text. 

 

Time.png

 

The difference between DAX and M are that they are two completely different languages. DAX is used with PowerPivot (the in-memory data model that Power BI uses). M is used with Power Query, the extract, transform and load (ETL) system that Power BI uses.