Указание типов столбцов при импорте данных xlsx в R с помощью пакета readxl
Я импортируюxlsx
2007 таблицы вR 3.2.1patched
используя пакетreadxl 0.1.0
подWindows 7 64
, Размер таблиц составляет порядка 25 000 строк на 200 столбцов.
функцияread_excel()
работает угощение Моя единственная проблема заключается в назначении класса столбца (тип данных) для малонаселенных столбцов. Например, данный столбец может иметь значение NA для 20 000 строк, а затем будет принимать символьное значение в строке 20 001.read_excel()
По умолчанию отображается тип столбца числовой при сканировании первых n строк столбца и поискеNAs
только. Данные, вызывающие проблему, - это символы в столбце с числовым значением. Когда предел ошибки достигнут, выполнение останавливается. Я на самом деле хочу, чтобы данные в разреженных столбцах, поэтому установка предела ошибки выше не является решением.
Я могу определить проблемные столбцы, просмотрев выданные предупреждения. А такжеread_excel()
имеет возможность утверждать тип данных столбца путем установки аргументаcol_types
в соответствии с пакетом документов:
ИлиNULL
угадать из таблицы или символьного вектора, содержащегоblank
,numeric
, date
или жеtext
.
Но значит ли это, что я должен построить вектор длиной 200, населенный почти в каждой позицииblank
а такжеtext
в горстку позиций, соответствующих оскорбительным столбцам?
Вероятно, есть способ сделать это в пару строкR
код. Создайте вектор необходимой длины и заполните егоblank
s. Может быть, другой вектор, содержащий номера столбцов, которые нужно принудительноtext
, а потом ... или, может быть, можно призватьread_excel()
только столбцы, для которых его догадки не такие, как хотелось бы.
Буду признателен за любые предложения.
Заранее спасибо.