у меня есть проблема, когда я импортировать CSV-файл с R:Чтение CSV с датами и номерами
Пример строки для импорта:
2010-07-27;91
2010-07-26;93
2010-07-23;88
Я использую заявление:
data <- read.csv2(file="...", sep=";", dec=".", header=FALSE)
когда я пытаюсь объединить эти данные с другими, полученными статистическим анализом, используя cbind
, дата отображается как целое число, потому что она была импортирована как фактор.
Если я попытаюсь показать его как строку с использованием as.character
, числовые данные также преобразуются в символы, поэтому они не пригодны для статистических процедур.
, когда я запустить вторую линию, я получаю сообщение об ошибке вроде «предоставило 9 переменных для замены 1 переменных». Однако, когда я обертываю 'strptime' в' as.POSIXct (...) ', то есть' as.POSIXct (strptime (data [, 1], "% Y-% m-% d") 'кажется для работы. –
Если данные [, 1] - это вектор символьных строк в формате c («2010-07-23», ...), что я написал. Что значит «похоже работать» в любом случае? например, вы просто конвертируете результат POSIXlt по умолчанию, и у вас есть еще одна функция, не упомянутая здесь, с использованием значения POSIXlt. Это нормально, это просто другой результат. Это не значит, что то, что там не работает, POSIXlt и POSIXct класса POSIXt (это тот, который я упомянул). – John
Это именно то, что * 'read.csv (... colClasses ...)' * для! См. ответ Марека. Выполнение преобразования во время чтения с помощью colClasses лучше, чем этот ответ, потому что он не тратит много временной памяти. (Просто сделайте * 'gc (reset = TRUE)' * впоследствии.) Кроме того, это более читаемо. – smci