Существует ли более быстрый способ суммировать произведение столбца одного кадра данных на строки другого кадра без цикла - PullRequest
0 голосов
/ 07 января 2020

Я пытаюсь суммировать x строк столбца данных (App_table) в x столбцов другой строки данных (numeric_col_data). В настоящее время я сделал это с помощью циклов, но поскольку размер информационного кадра велик (~ 2M строк), для его вычисления требуются часы. Есть ли более быстрый способ сделать то же самое?

      for (j in 1:nrow(Weighted_Scenario_table)) {
        Weighted_Scenario_table[j,i] <- sum(App_table[,i]*numeric_col_data[j,])
      }
    }

1 Ответ

1 голос
/ 07 января 2020

Полагаю, вы можете сначала преобразовать свои фреймы данных в матрицы, а затем применить матричный продукт, как показано ниже

Weighted_Scenario_table <- as.matrix(numeric_col_data) %*% as.matrix(App_table)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...