我有一个数据框,有像“nasal_coronal”和“coronal”,我想摆脱“nasal_”,并创建一个新的列标记为“nasal “基于另一列创建一个新列R
我最初试图使用这样的grep()
: data.df$nasal <- grep("^nasal", data$type, value = TRUE)
但是,R给我的错误是,替换的行比数据集少。
下面是创建迷你数据集的代码。
type <- c("nasal_coronal", "nasal_coronal", "coronal")
word <- c("something", "walk", "thing")
data.df <- data.frame(word, type)
您应该使用gsub命令而不是grep。 grep仅执行搜索。 gsub将执行带替换的搜索并返回一个与原始矢量长度相同的矢量。 – Dave2e