У меня возникла небольшая проблема с использованием R...
В следующем фрейме данных
test <- data.frame(v1=c(rep(1,3),rep(2,3)),v2=0)
Я хочу изменить значения для v2 в строках, где v1 равно 1.
test[test$v1==1,"v2"] <- 10
отлично работает.
test
v1 v2
1 1 10
2 1 10
3 1 10
4 2 0
5 2 0
6 2 0
Однако мне нужно сделать это в функции.
test <- data.frame(v1=c(rep(1,3),rep(2,3)),v2=0)
test.fun <- function (x) {
test[test$v1==x,"v2"] <- 10
print(test)
}
Вызов функции работает.
test.fun(1)
v1 v2
1 1 10
2 1 10
3 1 10
4 2 0
5 2 0
6 2 0
Однако, когда я сейчас смотрю тест:
test
v1 v2
1 1 0
2 1 0
3 1 0
4 2 0
5 2 0
6 2 0
он не работал. Есть ли команда, которая сообщает R действительно обновлять фрейм данных в функции? Большое спасибо за любую помощь!