[R] split character line into rows
Sarah Goslee
sarah.goslee at gmail.com
Mon Dec 17 23:06:30 CET 2012
On Mon, Dec 17, 2012 at 4:43 PM, Simonas Kecorius <simolas2008 at gmail.com> wrote:
> Hey Sarah,
> thanks for quick response and your kind help. I appreciate it a lot.
> You are completely right. When I input data as Arun suggested, there is no
> problems. But when I try to read it from txr file - something wrong happens.
> I add you a raw txt data. Maybe it would help.
> Thanks a lot for your attempts to solve my problems.
What have you tried to read it? And where's the dput() results that I requested?
> p.s. dont know how to write back to my own post, therefore I wrote straight
> to your mail. Sorry for that.
Choose "reply all" or include r-help at r-project.org in the To: line.
> 2012/12/17 Sarah Goslee <sarah.goslee at gmail.com>
>>
>> Certainly.
>>
>> But you'd be better advised to use dput(head(yourdata, 20)) to provide
>> data, since we don't actually know what's in your data after it has
>> passed through print, copy, and email. How you got it into R may also
>> be relevant.
>>
>> Also, I don't see how you get from the given data to the desired results:
>>
>> Given data, first line with date:
>>
>> [1] 2010.12.26 00:00:52 688,88 11,69 43,00
>>
>>
>> First line of result:
>> 2010.12.26 00:01:52 555 11.67 44
>>
>>
>> I'm guessing that there might be tab characters in the data as
>> separators, or are they spaces (this is why we need dput), and you
>> want the commas as decimal marks rather than separators?
>>
>> If it were me, I'd extract the non-date rows outside of R using grep,
>> then use read.csv2() to import it. But you can achieve much the same
>> effect using grep() within R to get the rows with dates, then
>> strsplit() to divide them into separate elements. Assuming that these
>> are character vectors, that is.
>>
>> For actual working code, you need to provide actual working data.
>>
>> Sarah
>>
>> On Mon, Dec 17, 2012 at 7:04 AM, Simonas Kecorius <simolas2008 at gmail.com>
>> wrote:
>> > Hey R users,
>> >
>> > suppose we have data:
>> >
>> > [1] 2010.12.26 00:00:52 688,88 11,69 43,00
>> > [2] 11,69 43,00
>> > [3] 11,69 43,00
>> > [4] 11,69 43,00
>> > [5] 11,69 43,00
>> > [6] 11,69 43,00
>> > [7] 11,69 43,00
>> > [8] 11,69 43,00
>> > [9] 11,69 43,00
>> > [10] 11,69 43,00
>> > [11] 11,69 43,00
>> > [12] 11,69 43,00
>> > [13] 11,69 43,00
>> > [14] 11,69 43,00
>> > [15] 11,69 43,00
>> > [16] 11,69 43,00
>> > [17] 11,69 43,00
>> > [18] 11,69 43,00
>> > [19] 11,69 43,00
>> > [20] 11,69 43,00
>> > [21] 11,69 43,00
>> > [22] 11,69 43,00
>> > [23] 11,69 43,00
>> > [24] 11,69 43,00
>> > [25] 11,69 43,00
>> > [26] 11,69 43,00
>> > [27] 11,69 43,00
>> > [28] 11,69 43,00
>> > [29] 11,69 43,00
>> > [30] 11,69 43,00
>> > [31] 11,69 43,00
>> > [32] 11,69 43,00
>> > [33] 11,69 43,00
>> > [34] 11,69 43,00
>> > [35] 11,69 43,00
>> > [36] 11,69 43,00
>> > [37] 11,69 43,00
>> > [38] 11,69 43,00
>> > [39] 11,69 43,00
>> > [40] 11,69 43,00
>> > [41] 11,69 43,00
>> > [42] 11,69 43,00
>> > [43] 11,69 43,00
>> > [44] 11,69 43,00
>> > [45] 11,69 43,00
>> > [46] 11,69 43,00
>> > [47] 11,69 43,00
>> > [48] 11,69 43,00
>> > [49] 11,69 43,00
>> > [50] 11,69 43,00
>> > [51] 11,69 43,00
>> > [52] 11,69 43,00
>> > [53] 11,69 43,00
>> > [54] 11,69 43,00
>> > [55] 11,69 43,00
>> > [56] 11,69 43,00
>> > [57] 11,69 43,00
>> > [58] 11,69 43,00
>> > [59] 11,69 43,00
>> > [60] 11,69 43,00
>> > [61] 2010.12.26 00:01:52 696,19 11,69 43,00
>> > [62] 11,69 43,00
>> > [63] 11,69 43,00
>> > [64] 11,69 43,00
>> > [65] 11,69 43,00
>> > [66] 11,69 43,00
>> > ..................................... etc.
>> >
>> > Is there a way to split data into date column, V2, V3 and V4 columns and
>> > erase those lines without date, so that data would look like that:
>> >
>> > date V2 V3 V4
>> > 2010.12.26 00:01:52 555 11.67 44
>> > 2010.12.26 00:02:52 566 11.67 44
>> >
>> > etc.
>> >
>> > Thanks a lot!
>> >
>> >
--
Sarah Goslee
http://www.functionaldiversity.org
More information about the R-help
mailing list