Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何插入“;1“;在R中某列的起始位置?_R_Regex_String_Units Of Measurement_Pad - Fatal编程技术网

如何插入“;1“;在R中某列的起始位置?

如何插入“;1“;在R中某列的起始位置?,r,regex,string,units-of-measurement,pad,R,Regex,String,Units Of Measurement,Pad,我的数据(主数据)中有一列名为unit master_data$unit <- c("Tonnes","1000 Tonnes","Numbers","1000 Numbers") master_data$unit检查unit是否以数字开头。如果不是,请在开头粘贴1 unit <- c("Tonnes","1000 Tonnes","Numbers","1000 Numbers") ifelse(grepl("^\\d", unit), unit, paste("1", unit)

我的数据(主数据)中有一列名为unit

master_data$unit <- c("Tonnes","1000 Tonnes","Numbers","1000 Numbers")

master_data$unit检查
unit
是否以数字开头。如果不是,请在开头粘贴
1

unit <- c("Tonnes","1000 Tonnes","Numbers","1000 Numbers")
ifelse(grepl("^\\d", unit), unit, paste("1", unit))
#[1] "1 Tonnes"     "1000 Tonnes"  "1 Numbers"    "1000 Numbers"

unit我们可以使用
sub
。这将匹配一个字符串,其中所有字符都是“字字符”,并替换为“1(匹配的字符)”:

单位
master_data$unit_len <- sapply(strsplit(master_data$unit, " "), length)


if (master_data$unit_len == 1) {
  paste("1 ", master_data$unit, sep="")
}
unit <- c("Tonnes","1000 Tonnes","Numbers","1000 Numbers")
ifelse(grepl("^\\d", unit), unit, paste("1", unit))
#[1] "1 Tonnes"     "1000 Tonnes"  "1 Numbers"    "1000 Numbers"
unit <- c("Tonnes","1000 Tonnes","Numbers","1000 Numbers")

sub('^(\\w+)$', '1 \\1', unit)
# [1] "1 Tonnes"     "1000 Tonnes"  "1 Numbers"    "1000 Numbers"