Jak połączyć dwie kolumny w nową kolumnę w ramce danych złożonej z dwóch lub więcej różnych plików csv?
Mam kilka plików csv nazwanych datami i dla każdego z nich chcę utworzyć nową kolumnę w każdym pliku, który zawiera dane z dwóch innych kolumn umieszczonych razem. Następnie chcę połączyć je w jedną dużą ramkę danych i wybrać tylko dwie z tych kolumn do zachowania. Oto przykład:
Powiedz, że mam dwie ramki danych:
a b c a b c
x 1 2 3 x 3 2 1
y 2 3 1 y 2 1 3
Następnie chcę utworzyć nową kolumnę d w każdym z nich:
a b c d a b c d
x 1 2 3 13 x 3 2 1 31
y 2 3 1 21 y 2 1 3 23
Następnie chcę połączyć je w ten sposób:
a b c d
x 1 2 3 13
y 2 3 1 21
x 3 2 1 31
y 2 1 3 23
Następnie zachowaj dwie kolumny aib i usuń dwie pozostałe kolumny b i c:
a d
x 1 13
y 2 21
x 3 31
y 2 23
Oto mój obecny kod (nie działa, gdy próbuję połączyć dwie kolumny lub gdy próbuję zachować tylko dwie kolumny):
f <- list.files(pattern="201\\d{5}\\.csv") # reading in all the files
mydata <- sapply(f, read.csv, simplify=FALSE) # assigning them to a dataframe
do.call(rbind,mydata) # combining all of those dataframes into one
mydata$Data <- paste(mydata$LAST_UPDATE_DT,mydata$px_last) # combining two of the columns into a new column named "Data"
c('X','Data') %in% names(mydata) # keeping two of the columns while deleting the rest