df <-data.frame(x=c(1:5),y=c(letters[1:5]))
比方说,我想修改的最后一排,dplyr更新在data.frame细胞
update.row<-filter(df,x==5) %>% mutate(y="R")
如何更新此行到data.frame? 唯一的办法,我发现虽然一个奇怪的方法是做一个反连接并追加结果。
df <-anti_join(df,update.row,by="x") %>%
bind_rows(update.row)
但是,它似乎是一个非常简单的任务的方式。 任何想法,非常感谢...
'DF <- df %>%发生变异(Y =取代(as.character(Y)中,x == 5, “R”))' – Jota
'df $ y [df $ x == 5] < - “R”'并且完成它。 – thelatemail
这是通过@Jota,'df%>%mutate(y = ifelse(x == 5,'R',as.character(y)))''解决方案的一个小选择。 'as.character'在这里是需要的,因为'y'是一个因素。 – steveb