Сохранение выходного объекта в кадре данных из цикла for в R - PullRequest
0 голосов
/ 11 сентября 2018

Я хочу написать скрипт на R для следующего уравнения и создать фрейм данных для каждого соответствующего результата.

x<-c(1:5)
y<-c(1:5)
z<-4*(x+2*y)

Мне нужно найти каждый результат с различной комбинацией значений X & Y, как в формате таблицы Excel со списком строк / столбцов от 1 до 5. Как этого добиться, используя функцию цикла for. Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Если вы намерены делать это с циклом, вот циклический подход, чтобы получить тот же результат, что и с outer:

result_matrix <- matrix(NA, nrow=length(x), ncol=length(y))
for(i in seq(x)) {
for(j in seq(y)) {
    result_matrix[i,j] <- 4*(x[i] + 2*y[j])
}
}
0 голосов
/ 11 сентября 2018

Вам не нужно использовать цикл, используйте outer

> outer(x, y, FUN=function(x,y){4*(x+2*y)})
     [,1] [,2] [,3] [,4] [,5]
[1,]   12   20   28   36   44
[2,]   16   24   32   40   48
[3,]   20   28   36   44   52
[4,]   24   32   40   48   56
[5,]   28   36   44   52   60
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...