trong khi sử dụng dplyr tôi gặp sự cố khi thay đổi giá trị cuối cùng khung dữ liệu của tôi. tôi muốn nhóm theo người dùng và thẻ và thay đổi Thời gian thành 0 cho giá trị/hàng cuối cùng trong nhóm.dplyr và đuôi để thay đổi giá trị cuối cùng trong một nhóm_by trong r
user_id tag Time
1 268096674 1 3
2 268096674 1 10
3 268096674 1 1
4 268096674 1 0
5 268096674 1 9999
6 268096674 2 0
7 268096674 2 9
8 268096674 2 500
9 268096674 3 0
10 268096674 3 1
...
đầu ra mong muốn:
user_id tag Time
1 268096674 1 3
2 268096674 1 10
3 268096674 1 1
4 268096674 1 0
5 268096674 1 0
6 268096674 2 0
7 268096674 2 9
8 268096674 2 0
9 268096674 3 0
10 268096674 3 1
...
Tôi đã cố gắng để làm một cái gì đó như thế này, trong số những người khác và không thể tìm ra nó:
df %>%
group_by(user_id,tag) %>%
mutate(tail(Time) <- 0)
Tôi đã cố gắng thêm một số hàng là tốt, nhưng không thể đặt tất cả lại với nhau. Bất kỳ trợ giúp sẽ được đánh giá cao.
tôi sẽ đề nghị một cái gì đó tương tự như: 'đột biến (Thời gian = thay thế (Thời gian, n(), 0) '. – A5C1D2H2I1M1N2O1R2T1
@AnandaMahto, đó cũng sẽ là một cách tiếp cận rất tốt –
Một tùy chọn khác, ít thanh lịch hơn có thể là:' mutate (Time = ifelse (row_number() == n() , 0, Thời gian)) ' –