Вычесть вектор из одного столбца матрицы - PullRequest
0 голосов
/ 08 июля 2020

Я полный новичок в R, и я действительно борюсь с этой проблемой. Мне нужно взять вектор evens и вычесть его из первого столбца матрицы top_secret. Я попытался вызвать только этот столбец, используя top_secret[,1], и вычесть из него вектор, но тогда он возвращает только столбец. Есть ли способ сделать это внутри матрицы, чтобы я мог продолжать манипулировать матрицей, не создавая кучу отдельных столбцов?

Ответы [ 2 ]

2 голосов
/ 08 июля 2020

Конечно, можно. Вот пример:

m <- matrix(c(1,2,3,4),4,4, byrow = TRUE)

> m
     [,1] [,2] [,3] [,4]
[1,]    1    2    3    4
[2,]    1    2    3    4
[3,]    1    2    3    4
[4,]    1    2    3    4

m[,4] <- m[,4] - c(5,5,5,5)

, что дает:

> m
     [,1] [,2] [,3] [,4]
[1,]    1    2    3   -1
[2,]    1    2    3   -1
[3,]    1    2    3   -1
[4,]    1    2    3   -1
0 голосов
/ 08 июля 2020

Или другой вариант: replace

replace(m, cbind(seq_len(nrow(m)), 4), m[,4] - 5)

данные

m <- matrix(c(1,2,3,4),4,4, byrow = TRUE)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...