我想更改 R 数据帧中最后一列的最后一个值。
我知道我可以这样使用基本 R:
df[nrow(), ncol()] <- "my value"
但我想使用整洁的方法
到目前为止我尝试过的:
# the last row and column to mutate by name
df %>% slice(1) %>% mutate(my_last_column="my value")
但我真的很想在不知道列名的情况下执行此操作。
最佳答案
以下是使用 dplyr
和示例 mtcars
data.frame 的一些选项:
要获取最后行,请尝试:
library(dplyr)
mtcars %>%
filter(row_number() == n())
或
mtcars %>%
slice_tail(n = 1)
要获取最后列,请尝试:
mtcars %>%
select_at(ncol(.))
或
mtcars %>%
select(tail(names(.), 1))
如果您想变异
最后一行和最后一列,您可以尝试此操作。
mtcars %>%
mutate_at(ncol(.), funs(ifelse(row_number() == n(), -1, .)))
这会将最后一行和最后一列中的值更改为 -1。
关于r - 使用 dplyr 更改 R 数据帧中最后一列最后一行的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65700722/