2015-02-18 3 views
-1

Итак, я пытаюсь прочитать матрицу 49 * 49 из csv и вычислить сумму. Но я столкнулся с функцией, которая не обнаружила ошибку, несмотря на то, что мой csv получил признание.Функция не найдена в r

w <- read.csv(file="matrix.csv", header=F, sep=","); 
sum <- 0 
for(i in 1:49) 
for(j in 1:49) 
    sum = sum +w(i,j); 

Здесь w - матрица 49 * 49. Я получаю сообщение о том, что функция 'w' не найдена в R, но я могу просмотреть w-матрицу в r.

+1

Ошибки синтаксиса. Эти скобки должны быть скобками 'w [i, j]' not 'w (i, j)', а для циклов for должно быть 'for (i в 1:49) {sum = sum + w [i, j]' – jraab

ответ

1

Вы говорите R, чтобы вызвать функцию w, когда вы индексируете с помощью parens. Это синтаксис вызова функции.

Matrix и кадр данных индексации с помощью квадратных скобок []:

sum <- 0 
for(i in 1:49) 
for(j in 1:49) 
    sum = sum +w[i,j]; 

Лучше не использовать имя sum, потому что она существует. И на самом деле он делает именно то, что вы хотите, без каких-либо явных циклов:

sum(w) 
Смежные вопросы