Проблема преобразования матрицы в фрейм данных в R (R считает, что все числовые типы являются факторами) - PullRequest
1 голос
/ 27 июля 2010

Я передаю данные из C # в R через интерфейс COM.Когда данные поступают в R, они помещаются в «матрицу».Некоторые функции, которые я использую, требуют, чтобы данные были внутри DataFrame.Я преобразовываю структуру данных, используя

newDataFrame <- as.data.frame(oldMatrix)

Таблица данных достигает R просто отлично, но после преобразования в DataFrame предполагается, что все мои числовые данные являются факторами!

Так получается: {34, 46, 90, 54, 69, 54} в {1, 2, 3, 4, 5, 4}

В моей таблице данных есть факторы, поэтому я простоне может заставить все это быть числовым.Есть ли способ обойти это?Примечание. Я не могу экспортировать данные в формате CSV в файловую систему и вручную прочитать их в R.

В дополнение к этому, используемая мной функция, для которой требуется DataFrame, представляет собой пакет 'Hmisc', использующий

hist.data.frame(dataFrame)

это создает частотную гистограмму для каждого столбца данных в DataFram и упорядочивает их все в виде сетки (довольно изящно)!

Спасибо!-Dave

Ответы [ 2 ]

5 голосов
/ 27 июля 2010

Я думаю, что вы ошиблись в диагностике проблемы - все столбцы в матрице должны быть одного типа, так что, скорее всего, именно там возникает проблема, а не преобразование во фрейм данных.

1 голос
/ 27 июля 2010

У меня была эта проблема раньше.Вам нужно установить stringsAsFactors = F при чтении данных.

Теперь вы можете преобразовывать отдельные переменные / столбцы в факторы (т. Е. С помощью as.numeric () и т. П.), Не беспокоясь о том, как числалечатся.

...