obtaining a true/false vector with combination of strsplit, length, unlist,
Hi,
A pared down version of the dataset I'm working with:
edm<-read.table(textConnection("WELLID X_GRID Y_GRID LAYER ROW COLUMN
SPECIES CALCULATED OBSERVED
w301_3 4428. 1389 2 6 18 1 3558
6490.
w304_12 4836. 6627 2 27 20 1 3509
3228.
02_10_12080 3.6125E+04 13875 1 56 145 1 2774
-999.0
02_10_12080 3.6125E+04 13875 1 56 145 1 2774
-999.0
02_10_12081 3.6375E+04 13875 1 56 146 1 3493
-999.0
02_10_12092 3.9125E+04 13875 1 56 157 1 4736
-999.0
w305_12 2962. 7326 2 30 12 1 4575
5899."),header=T)
closeAllConnections()
I'm having a hard time coming up with the R code that would produce a
TRUE/FALSE vector based on whether or not the first column of the data.frame
"edm" has a length of 2 or 3? To show what I mean going row-by-row, I could
do the following:
length(strsplit(as.character(edm$WELLID),"_")[[1]])==3
[1] FALSE
length(strsplit(as.character(edm$WELLID),"_")[[2]])==3
[1] FALSE
length(strsplit(as.character(edm$WELLID),"_")[[3]])==3
[1] TRUE
length(strsplit(as.character(edm$WELLID),"_")[[4]])==3
[1] TRUE
length(strsplit(as.character(edm$WELLID),"_")[[5]])==3
[1] TRUE
length(strsplit(as.character(edm$WELLID),"_")[[6]])==3
[1] TRUE
length(strsplit(as.character(edm$WELLID),"_")[[7]])==3
[1] FALSE I've fumbled around trying to come up with a line of R code that would create a vector that looks like: "FALSE FALSE TRUE TRUE TRUE TRUE FALSE" The final goal is to use this vector to create two new data.frames, where, for example, the first contains all the rows of edm in which the first column has a length of 2 when split using a "_" character. The second data.frame would contain all the rows in which the first column has a length of 3 when split using a "_" character. Thanks, Eric -- View this message in context: http://r.789695.n4.nabble.com/obtaining-a-true-false-vector-with-combination-of-strsplit-length-unlist-tp4380050p4380050.html Sent from the R help mailing list archive at Nabble.com.