2016-04-15 4 views
1

Привет У меня есть быстрый вопрос о R. У меня есть три заявления:R матрица создания

n=187 
    a <- MatrixA[ (1):(4*n), c('x1','y') ] 
    b <- MatrixA[ (1):(4*n), c('y') ] 

, где матрица А является матрицей 1250 х 2 с первой колонке, обозначенной «x1» и второй колонке помечен как «y».

я выполнить команду и становится 748 х 2 матрицы однако б является значения (это говорит INT [1: 748] блаблаб).
Почему это? Я смущен: эти утверждения почти идентичны.

Моя конечная цель - создать b как матрицу 748 x 1 со значениями столбца 'y'.
Любая помощь приветствуется и благодарит вас за чтение!

мой о Rstudio: Версия 0.99.893 - © 2009-2016 RStudio, Inc. Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_3) AppleWebKit/601.4.4 (KHTML, как Gecko)

ответ

3

Когда подмножество, R, если возможно, упростит выход. Например, если вы выбираете только один столбец матрицы, по умолчанию он будет принудительно привязан к вектору. См. here.

Быстрое решение сделать:

b <- MatrixA[ (1):(4*n), c('y'), drop=FALSE] 
+0

извините за задержку ответа. Спасибо, что помогли! Это было высоко оценено. Я не могу себе представить, почему R подумал, что это хороший дизайн. Кажется совершенно неинтуитивным !! – OctaveParango

Смежные вопросы