Hi I am trying to convert data from wide to long format but without any success.
I have the following data set
http://web.mta.info/developers/data/nyct/turnstile/turnstile_120908.txt
This data has following columns: C/A,UNIT,SCP,DATE1,TIME1,DESC1,ENTRIES1,EXITS1,DATE2,TIME2,DESC2,ENTRIES2,EXITS2,DATE3,TIME3,DESC3,ENTRIES3,EXITS3,DATE4,TIME4,DESC4,ENTRIES4,EXITS4,DATE5,TIME5,DESC5,ENTRIES5,EXITS5,DATE6,TIME6,DESC6,ENTRIES6,EXITS6,DATE7,TIME7,DESC7,ENTRIES7,EXITS7,DATE8,TIME8,DESC8,ENTRIES8,EXITS8
I would like to create a data frame with just DATE, DESC, ENTRIES, EXITS along with other unique columns.
Here DATE column will contain values of DATE1, DATE2, DATE3,..., DATE8. similarly for other columns DESC, ENTRIES and EXITS.
So far, I am subsetting the main data frame 8 times and performing the required data manipulation.
Please see the code below
weekly_data <- read.csv("http://web.mta.info/developers/data/nyct/turnstile/turnstile_120908.txt", sep = ",")
weekly_data <- weekly_data[ , -which(names(weekly_data) %in% c("TIME1", "TIME2", "TIME3", "TIME4", "TIME5", "TIME6", "TIME7", "TIME7", "TIME8"))]
data_mta1 <- data_mta[which(data_mta$DESC1 == "REGULAR" | data_mta$DESC1 == "RECOVR AUD"), c("C/A","UNIT","SCP", "Station", "DATE1", "DESC1", "ENTRIES1", "EXITS1")]
data_mta2 <- data_mta[which(data_mta$DESC2 == "REGULAR" | data_mta$DESC2 == "RECOVR AUD"), c("C/A","UNIT","SCP", "Station", "DATE2", "DESC2", "ENTRIES2", "EXITS2")]
data_mta3 <- data_mta[which(data_mta$DESC3 == "REGULAR" | data_mta$DESC3 == "RECOVR AUD"), c("C/A","UNIT","SCP", "Station", "DATE3", "DESC3", "ENTRIES3", "EXITS3")]
data_mta4 <- data_mta[which(data_mta$DESC4 == "REGULAR" | data_mta$DESC4 == "RECOVR AUD"), c("C/A","UNIT","SCP", "Station", "DATE4", "DESC4", "ENTRIES4", "EXITS4")]
data_mta5 <- data_mta[which(data_mta$DESC5 == "REGULAR" | data_mta$DESC5 == "RECOVR AUD"), c("C/A","UNIT","SCP", "Station", "DATE5", "DESC5", "ENTRIES5", "EXITS5")]
data_mta6 <- data_mta[which(data_mta$DESC6 == "REGULAR" | data_mta$DESC6 == "RECOVR AUD"), c("C/A","UNIT","SCP", "Station", "DATE6", "DESC6", "ENTRIES6", "EXITS6")]
data_mta7 <- data_mta[which(data_mta$DESC7 == "REGULAR" | data_mta$DESC7 == "RECOVR AUD"), c("C/A","UNIT","SCP", "Station", "DATE7", "DESC7", "ENTRIES7", "EXITS7")]
data_mta8 <- data_mta[which(data_mta$DESC8 == "REGULAR" | data_mta$DESC8 == "RECOVR AUD"), c("C/A","UNIT","SCP", "Station", "DATE8", "DESC8", "ENTRIES8", "EXITS8")]
Any help would be greatly appreciated.
Thank you and have a good day.