Чтение CSV преобразует пустые ячейки в NA, если используется аргумент пропуска. Как это поведение предотвращается?
Нужно импортировать очень широкий и длинный файл данных, который содержит много пустых ячеек. Если я использую аргумент "пропустить", вводятся NA, но я бы предпочел оставить пустые ячейки пустыми. Как это можно сделать? Конечная цель состоит в том, чтобы преобразовать данные в примерно 3 столбца на основе имен заголовков.
Работоспособный образец:
d1 <- read.csv(url("https://raw.githubusercontent.com/llorban/tracking/master/Upward%20motion%2C%20HF%20Left%202019-04-02%2002.56.19%20PM_008.csv", header = F, stringsAsFactors = F))
# this loads the blank cells as empty but does not produce the right headers
d2 <- read.csv(url("https://raw.githubusercontent.com/llorban/tracking/master/Upward%20motion%2C%20HF%20Left%202019-04-02%2002.56.19%20PM_008.csv", skip = 6, header = T, stringsAsFactors = F))
# Produces the right headers but converts blanks to NA's which I suspect don't work well with unite()
library(tidyr)
# Merge dataframe of tracks into one dataframe
Xpos <- grep(glob2rx("X*"), colnames(d2))
Ypos <- grep(glob2rx("Y*"), colnames(d2))
Zpos <- grep(glob2rx("Z*"), colnames(d2))
collapsed_data <- unite(d2, "Xpos", Xpos)
collapsed_data <- unite(d2, "Ypos", Ypos)
collapsed_data <- unite(d2, "Zpos", Zpos)