Its not clear exactly what the rules are for this but if we assume
that numbers always end in a decimal plus two digits then
using stapply from the gsubfn package:
+ 1 22.33 44.55
+ 2 66.77 88.99
+ 3 222.33344.55
+ 4 66.77 88.99"
library(gsubfn)
L <- readLines(textConnection(Lines))
strapply(L[-1], "[0-9]*[.][0-9][0-9]", as.numeric, simplify = rbind)
? ? ? [,1] ? [,2]
[1,] ?22.33 ?44.55
[2,] ?66.77 ?88.99
[3,] 222.33 344.55
[4,] ?66.77 ?88.99
See http://gsubfn.googlecode.com and for regular expressions see ?regex
On Mon, May 4, 2009 at 10:20 PM, Jason Rupert <jasonkrupert at yahoo.com> wrote:
I've got read.table to successfully read in my table of three columns. ?Most of the time I will have a set number of rows, but sometime that will be variable and sometimes there will be only be two variables in one row, e.g.
Time Loc1 Loc2
1 22.33 44.55
2 66.77 88.99
3 222.33344.55
4 66.77 88.99
Is there any way to have read.table handle (1) a variable number of rows, and (2) sometime there are only two variables as shown in Time = 3 above?
Just curious about how to handle this, and if read.table is the right way to go about or if I should read in all the data and then try to parse it out best I can.
Thanks again.
? ? ? ? ? ? ? _
platform ? ? ? i386-apple-darwin8.11.1
arch ? ? ? ? ? i386
os ? ? ? ? ? ? darwin8.11.1
system ? ? ? ? i386, darwin8.11.1
status
major ? ? ? ? ?2
minor ? ? ? ? ?8.0
year ? ? ? ? ? 2008
month ? ? ? ? ?10
day ? ? ? ? ? ?20
svn rev ? ? ? ?46754
language ? ? ? R
version.string R version 2.8.0 (2008-10-20)