我想在我的數據集中創建一個新列:i)如果單詞本身以「vi」開頭,則刪除最後一個字符;和ii)如果單詞本身不以「vi」開始,則丟棄最後2個字符。我知道如何在R於這項工作,象下面這樣:有條件的變異由dplyr
iris$Species <- as.character(iris$Species)
iris$Species_mod <- substr(iris$Species,
1,
ifelse(grepl('^vi',iris$Species),
nchar(iris$Species)-1,
nchar(iris$Species)-2))
但我有一個很難破譯mutate
,在dplyr if_else
和matches
。任何人都可以啓發我嗎?謝謝!
你試過從''tidyverse' case_when'? – Aramis7d