R избегать принуждения от матрицы к числовой

Возможный дубликат:
одномерная матрица заменяется вектором в R

Я работаю с matrix объектами в R, и много раз бывает так, что я хочу выбрать только один столбец матрицы, чтобы использовать его как matrix одного столбца !!! Да, я имею в виду, что я не хочу, чтобы R автоматически принуждал его к классу numeric, потому что в этом случае значение представляет собой матрицу из 1 столбца. Как избежать того, чтобы R делал это глупое преобразование все время на общем уровне. Я не хочу загромождать свой код as.matrix везде!


person David Bellot    schedule 08.10.2012    source источник
comment
Похоже, стоит прочитать R Inferno: burns-stat.com /pages/Tutor/R_inferno.pdf Сейчас вы находитесь в Circle 8.1.44.   -  person Aaron left Stack Overflow    schedule 08.10.2012
comment
@GSee: появился быстрый поиск: stackoverflow.com/q/9949202/892313, stackoverflow.com/q/12601692/892313, stackoverflow.com /q/7598674/892313. Я думаю, что первый или третий будут ближайшим дубликатом.   -  person Brian Diggs    schedule 08.10.2012
comment
stat.ethz.ch/pipermail/r-help/2009- ноябрь/218081.html   -  person Ben Bolker    schedule 08.10.2012
comment
вы, ребята, лучше меня находите дубликаты и впредь даете мне ответ. Итак, большое спасибо всем вам.   -  person David Bellot    schedule 09.10.2012


Ответы (1)


Используйте 1_

> matrix(1:10, ncol=2)
     [,1] [,2]
[1,]    1    6
[2,]    2    7
[3,]    3    8
[4,]    4    9
[5,]    5   10
> matrix(1:10, ncol=2)[, 2]
[1]  6  7  8  9 10
> matrix(1:10, ncol=2)[, 2, drop=FALSE]
     [,1]
[1,]    6
[2,]    7
[3,]    8
[4,]    9
[5,]   10
person GSee    schedule 08.10.2012