[R] Looking for simple line-splitting code
    Duncan Murdoch 
    murdoch@dunc@n @end|ng |rom gm@||@com
       
    Wed Feb  5 14:44:12 CET 2025
    
    
  
If I have this object:
   x <- c("abc\ndef", "", "ghi")
and I write it to a file using `writeLines(x, "test.txt")`, my text 
editor sees a 5 line file:
   1: abc
   2: def
   3:
   4: ghi
   5:
which is what I'd expect:  the last line in the editor is empty.  If I 
use `readLines("test.txt")` on that file, I get the vector
   c("abc", "def", "", "ghi")
and all of that is fine.
What I'm looking for is simple code that modifies x to the `readLines()` 
output, without actually writing and reading it.
My first attempt doesn't work:
   unlist(strsplit(x, "\n"))
because it leaves out the blank line 3.  I can fix that with this ugly code:
   lines <- strsplit(x, "\n")
   lines[sapply(lines, length) == 0] <- list("")
   lines <- unlist(lines)
Surely there's a simpler way to do this?  I'd like to use just base 
functions, no other packages.
Duncan Murdoch
    
    
More information about the R-help
mailing list