如何在R语言中按位置修改数据框内的单个重复ID名称
重复ID的单个修改方案
方法1:基础行列索引修改
直接定位目标行和列进行赋值,适合明确知道目标位置的情况:
# 将第3行的ID列修改为"A-1" mydf[3, "ID"] <- "A-1"
执行后查看数据框,第3行的ID已更新为"A-1"。
方法2:dplyr风格修改
如果你习惯用dplyr操作数据,可以结合mutate()和行号/条件判断来修改:
按行号定位
利用row_number()函数精准指定目标行:
library(dplyr) mydf <- mydf %>% mutate(ID = case_when( row_number() == 3 ~ "A-1", TRUE ~ ID ))
按特征条件定位
如果不确定行号,可结合其他列的特征(比如该"A"对应的Value是4)来定位:
mydf <- mydf %>% mutate(ID = case_when( ID == "A" & Value == 4 ~ "A-1", TRUE ~ ID ))
内容的提问来源于stack exchange,提问作者dplyr
相关产品推荐
相关产品推荐

