如何根据R中的字符串向字符串向量添加特殊单位

如何根据R中的字符串向字符串向量添加特殊单位,r,string,vector,R,String,Vector,我的向量最多可以包含以下字符串。名字总是一样的。唯一的区别是向量并不总是包含所有字符串,而且顺序可能会混淆 v.names <- c("spotDE", "spotFR", "windDE", "resLoadDE", "nuclearFR", "solarDE", "consumptionDE", "capNuc

我的向量最多可以包含以下字符串。名字总是一样的。唯一的区别是向量并不总是包含所有字符串,而且顺序可能会混淆

v.names <- c("spotDE", "spotFR", "windDE", "resLoadDE", "nuclearFR", "solarDE", 
             "consumptionDE", "capNucDE", "temperatureDE", "temperatureFR",
             "capLigDE", "capHardCDE", "capGDE", "capDerivedGDE", "capODE", 
             "capHydroPumpDE", "capHydroResDE", "capRoRDE", "capNucFR", "capHardCFR", 
             "capGFR", "capOFR", "capBiomassFR", "capHydroPumpFR", "capHydroResFR", "capRoRFR")

v.names当
根据条件分配前缀时,可以使用
case\u

library(dplyr)
result <- paste0(v.names, case_when(grepl('^spot', v.names) ~ " \u20acMWh", 
                                    grepl('^temperature', v.names) ~ " °C", 
                                    grepl('^cap', v.names) ~ " MW", 
                                    TRUE ~ " MWh/h"))
库(dplyr)
结果
library(dplyr)
result <- paste0(v.names, case_when(grepl('^spot', v.names) ~ " \u20acMWh", 
                                    grepl('^temperature', v.names) ~ " °C", 
                                    grepl('^cap', v.names) ~ " MW", 
                                    TRUE ~ " MWh/h"))