Диммы симметрии c Матрица (пакет Матрица) - PullRequest
0 голосов
/ 19 февраля 2020

Я думаю, что поведение кода ниже странно. Это ошибка или она должна быть такой? Я хотел бы иметь только имена столбцов и не имена строк. Но невозможно удалить имена, назначив NULL. Я использовал R версии 3.6.2 и Matrix версии 1.2-18.

Вход

library(Matrix)
m <- Matrix(0, 2, 2)
colnames(m) <- c("a", "b")
m
attr(m, "Dimnames")
rownames(m)
rownames(m) <- NULL
rownames(m)
colnames(m) <- NULL
colnames(m)
attr(m, "Dimnames")

Выход

> library(Matrix)
> m <- Matrix(0, 2, 2)
> colnames(m) <- c("a", "b")
> m
2 x 2 sparse Matrix of class "dsCMatrix"
  a b
a . .
b . .
> attr(m, "Dimnames")
[[1]]
NULL

[[2]]
[1] "a" "b"

> rownames(m)
[1] "a" "b"
> rownames(m) <- NULL
> rownames(m)
[1] "a" "b"
> colnames(m) <- NULL
> colnames(m)
[1] "a" "b"
> attr(m, "Dimnames")
[[1]]
[1] "a" "b"

[[2]]
NULL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...