无法将R中的for循环用于gsub

无法将R中的for循环用于gsub,r,for-loop,gsub,R,For Loop,Gsub,我想将我的元素从Country_输入向量传递到我的for循环中,但是gsub一直将NaN打印为输出 Revenue <- read.csv("Revenue.csv") Traffic <- read.csv("Traffic.csv") Country_input <- c("CH", "CZ", "DE", "FR", "NL", "PL", "UK") RPS_country <- sum(Revenue[Revenue$Country == "x" &am

我想将我的元素从Country_输入向量传递到我的for循环中,但是gsub一直将NaN打印为输出

Revenue <- read.csv("Revenue.csv")

Traffic <- read.csv("Traffic.csv")

Country_input <- c("CH", "CZ", "DE", "FR", "NL", "PL", "UK")


RPS_country <- sum(Revenue[Revenue$Country == "x" & Revenue$Week =="2016-11", "Revenue"]) / sum(Traffic[Traffic$Country == "x" & Traffic$Week =="2016-11", "Sessions"])


output <- NULL
for (i in 1:length(Country_input)){
  output[i] <-gsub("x", Country_input[i], RPS_country)
}

谢谢大家!我想Onyanbu帮我找到了答案。作为RPS_国家/地区输出一个数值。我无法将for循环传递到单个值

因此,我决定单独创建向量,并在循环后将其相加:

x <- NULL
y <- NULL
for (i in 1:length(Country_input)){
  x[i] <- sum(Revenue[Revenue$Country == Country_input[i] & Revenue$Week =="2016-11","Revenue"])
  y[i] <- sum(Traffic[Traffic$Country == Country_input[i] & Traffic$Week =="2016-11","Sessions"])
  }
RPS_Country <- round(x/y, 3)
RPS_Country

x
用于(1中的i:长度(国家/地区输入))
length(Country\u input)
是一个单一值。另一个是
RPS\u Country
是一个数值。仅从求和中获得一个数值。因此它不包含
x
。但这并不是它给你的原因。
NA
Hi LAP我在1:length中对i进行了修改,但是它仍然会产生一个输出:[1]“NaN”“NaN”“NaN”“NaN”“NaN”“NaN”@onyanbu谢谢onyanbu,我该如何解决这个问题?你知道我如何改变RPS_国家并使其与众不同吗?你需要给我们一个数据示例。如果可以,请发布
dput
(所有数据或第一行)的输出。
x <- NULL
y <- NULL
for (i in 1:length(Country_input)){
  x[i] <- sum(Revenue[Revenue$Country == Country_input[i] & Revenue$Week =="2016-11","Revenue"])
  y[i] <- sum(Traffic[Traffic$Country == Country_input[i] & Traffic$Week =="2016-11","Sessions"])
  }
RPS_Country <- round(x/y, 3)
RPS_Country