Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Hello everyone,
I have a data set with several timesnaps and the according informations. Now I want to add a time snap at 10pm for every day. The information of the other column for the 10pm time snap should be taken from the rows before.
For example:
In this case, I want to have an additional raw between raw 1 and raw 2 with the time snap at 01.01.2025 22:00:00 | 9
Anyone an idea how to add a aditional raw?
Solved! Go to Solution.
In Power Query, right-click your original table → Duplicate.
(You’ll work with two versions.)
In the new copy, do the following:
Group the data by Date (ignore time part).
(e.g., group by Date.From([Timestamp])
)
For each group:
Find the latest time <= 22:00 (or simply the latest time for the day).
Create a new row with Timestamp = Date + 22:00:00
and Value = last known value before 22:00
.
let
Source = YOUR_TABLE,
AddDate = Table.AddColumn(Source, "DateOnly", each Date.From([Timestamp])), // just the date
Grouped = Table.Group(AddDate, {"DateOnly"}, {
{"AllRows", each
let
RowsBefore22h = Table.SelectRows(_, each Time.From([Timestamp]) <= #time(22,0,0)),
LastRow = Table.Last(RowsBefore22h),
NewRow = [
Timestamp = [DateOnly] & #time(22,0,0),
Value = LastRow[Value]
]
in
{NewRow}
, type list}
}),
Expanded = Table.ExpandListColumn(Grouped, "AllRows")
in
Expanded
Go back to your original table.
Append (combine) with this "10 PM Rows" table.
Sort everything by Timestamp
again.
Did I answer your question? Mark my post as a solution! Appreciate your Kudos !!
Thanks @johnbasha33 for Addressing the issue.
Hi @hish ,
we would like to follow up to see if the solution provided by the super user resolved your issue. Please let us know if you need any further assistance.
If our super user response resolved your issue, please mark it as "Accept as solution" and click "Yes" if you found it helpful.
Regards,
Chaithanya.
Thanks @johnbasha33 for Addressing the issue.
Hi @hish ,
we would like to follow up to see if the solution provided by the super user resolved your issue. Please let us know if you need any further assistance.
If our super user response resolved your issue, please mark it as "Accept as solution" and click "Yes" if you found it helpful.
Regards,
Chaithanya.
Thanks @johnbasha33 for Addressing the issue.
Hi @hish ,
we would like to follow up to see if the solution provided by the super user resolved your issue. Please let us know if you need any further assistance.
If our super user response resolved your issue, please mark it as "Accept as solution" and click "Yes" if you found it helpful.
Regards,
Chaithanya.
In Power Query, right-click your original table → Duplicate.
(You’ll work with two versions.)
In the new copy, do the following:
Group the data by Date (ignore time part).
(e.g., group by Date.From([Timestamp])
)
For each group:
Find the latest time <= 22:00 (or simply the latest time for the day).
Create a new row with Timestamp = Date + 22:00:00
and Value = last known value before 22:00
.
let
Source = YOUR_TABLE,
AddDate = Table.AddColumn(Source, "DateOnly", each Date.From([Timestamp])), // just the date
Grouped = Table.Group(AddDate, {"DateOnly"}, {
{"AllRows", each
let
RowsBefore22h = Table.SelectRows(_, each Time.From([Timestamp]) <= #time(22,0,0)),
LastRow = Table.Last(RowsBefore22h),
NewRow = [
Timestamp = [DateOnly] & #time(22,0,0),
Value = LastRow[Value]
]
in
{NewRow}
, type list}
}),
Expanded = Table.ExpandListColumn(Grouped, "AllRows")
in
Expanded
Go back to your original table.
Append (combine) with this "10 PM Rows" table.
Sort everything by Timestamp
again.
Did I answer your question? Mark my post as a solution! Appreciate your Kudos !!