Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to split a character vector into data frame?

I'm still relatively new to R and hope you can again help me. I have a character vector with a length of 42000. The vector looks like this:

a <- c("blablabla-19960101T000000Z-1.tsv", "blablabla-19960101T000000Z-2.tsv", "blablabla-19960101T000000Z-3.tsv")

I want to split the vector into a data frame which looks like this:

Name        Date          no
blablabla   1996-01-01    1
blablabla   1996-01-01    2
blablabla   1996-01-01    3

I'm struggling with the splitting as well as the creation of my data frame. Can someone help me with this? Thanks!

like image 460
Thomas Avatar asked Mar 17 '14 13:03

Thomas


1 Answers

DF <- data.frame(do.call(rbind, strsplit(a, "-", fixed=TRUE)))
DF[,2] <- as.Date(DF[,2] , format="%Y%m%d")
DF[,3] <- as.integer(gsub(".tsv", "", DF[,3], fixed=TRUE))

#         X1         X2 X3
#1 blablabla 1996-01-01  1
#2 blablabla 1996-01-01  2
#3 blablabla 1996-01-01  3
like image 94
Roland Avatar answered Sep 29 '22 09:09

Roland