Как использовать функции princomp() или prcomp() в R с большими наборами данных, не размещая данные?

Я только начал знать PCA, и я хочу использовать его для огромного набора данных микрочипов с более чем 4 000 000 строк. У меня есть столбцы в виде образцов, а строки в виде генов / локусов. Я прошел некоторые уроки по использованию PCA и наткнулся на princomp() и prcomp() и несколько других.

Теперь, когда я узнал здесь, что для построения "образцов" в биплоте мне нужно иметь их в строках и гены / локусы в столбцах, и, следовательно, мне придется транспонировать свои данные, прежде чем использовать их для PCA.

Однако, поскольку строк больше, чем 4 000 000, я не могу переставить их в столбцы, потому что столбцы ограничены. Поэтому мой вопрос заключается в том, есть ли способ выполнить PCA для моих данных, не транспонируя их, используя эти функции R? Если нет, может ли кто-нибудь из вас предложить мне другой способ или способ сделать это?

1 ответ

Решение

Почему вы ненавидите транспонировать ваши данные? Это просто!

Если вы читаете ваши данные в R (например, как матрица microarray.data) вы можете транспонировать их просто командой:

transposed.microarray.data<-t(microarray.data)
Другие вопросы по тегам