Невозможно отделить переменные от набора данных - PullRequest
0 голосов
/ 21 октября 2019

Я использую набор данных Dodgers.data, который я пытаюсь правильно прочитать, и он загружается только под двумя переменными вместо 3. Я пробую команду sep и могу выполнять только одну или другую. Если я добавлю «,», я смогу разделить время и количество машин, но время и дата будут объединены. Будем благодарны за любые советы!

https://archive.ics.uci.edu/ml/datasets/Dodgers+Loop+Sensor

dat_txt = ldply("Dodgers.data", read.table, sep = ",", fill=TRUE, header = TRUE)

dat_txt
View(dat_txt)

1 Ответ

0 голосов
/ 21 октября 2019

Во-первых, это нормально, что при чтении файлов вы получаете только два столбца, поскольку в строке есть только одна запятая. Первый столбец является частью до запятой, а второй столбец - частью после. Кроме того, у вас нет имен столбцов в качестве первой строки, поэтому header=FALSE является правильным выбором, и его легче загрузить с помощью read_csvнапример, функция tidyr.

library(readr)
dat_txt <- read_csv("Dodgers.data",col_names = c('datetime','count'))

Чтобы разделить части даты и времени, я рекомендую использовать пакет lubridate для преобразования столбца datetime из символа в объект datetime, затемВы можете создать три столбца, содержащие дату, часы и минуты, части

library(lubridate)
library(dplyr)
dat_txt <- dat_txt %>% mutate(datetime = mdy_hm(datetime),
               date=date(datetime),
               hour = hour(datetime),
               minute= minute(datetime))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...