Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.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
在R函数中运行多个代码行_R - Fatal编程技术网

在R函数中运行多个代码行

在R函数中运行多个代码行,r,R,我想在函数中运行一些代码行。有没有一种简单的方法可以在R中运行多个代码行,这样我就不需要一行接一行地运行代码了? 比如Java中的void方法 a() { data$Item <- gsub(" Grams ", "g ", data$Item); data$Item <- gsub("Grams ", "g ", data$Item); data$Item <- gsub(" GRAMS ", "g ", data$Item); data$Item <- gsub("G

我想在函数中运行一些代码行。有没有一种简单的方法可以在R中运行多个代码行,这样我就不需要一行接一行地运行代码了? 比如Java中的void方法

a() {
data$Item <- gsub(" Grams ", "g ", data$Item);
data$Item <- gsub("Grams ", "g ", data$Item);
data$Item <- gsub(" GRAMS ", "g ", data$Item);
data$Item <- gsub("GRAMS ", "g ", data$Item);
data$Item <- gsub("grams", "g ", data$Item);
data$Item <- gsub("Grams", "g ", data$Item);
}

谢谢你的帮助

您可以简单地将字符串放在小写,然后执行单个gsub,然后使用trimws处理额外的空格

但是你可以做一个这样的函数:

my_function <- function() {
    data$Item <<- gsub(" Grams ", "g ", data$Item)
    data$Item <<- gsub("Grams ", "g ", data$Item)
    data$Item <<- gsub(" GRAMS ", "g ", data$Item)
    data$Item <<- gsub("GRAMS ", "g ", data$Item)
    data$Item <<- gsub("grams", "g ", data$Item)
    data$Item <<- gsub("Grams", "g ", data$Item)
}
my_function()

使用double我认为这个错误是因为在最后一行后面有一个分号,所以R需要另一个函数,但是你给了它一个右括号。如果删除最后一个分号,错误应该会消失。否错误消息将保留。Ty:很好,但在处理字符串时尽量使用tolower,以保证获得所有不同的大小写。@TheBiro如果您坚持使用该函数而不是gsub tolower函数来维护代码,也许将来您可能需要添加其他大小写,我建议使用带有正则表达式的gsub,例如数据$newItem
data$Item <- gsub("grams", "g ", tolower(data$Item))
my_function <- function() {
    data$Item <<- gsub(" Grams ", "g ", data$Item)
    data$Item <<- gsub("Grams ", "g ", data$Item)
    data$Item <<- gsub(" GRAMS ", "g ", data$Item)
    data$Item <<- gsub("GRAMS ", "g ", data$Item)
    data$Item <<- gsub("grams", "g ", data$Item)
    data$Item <<- gsub("Grams", "g ", data$Item)
}
my_function()