[R] read complicated file
William Simpson
william.a.simpson at gmail.com
Thu Nov 15 12:09:46 CET 2007
Dear R experts,
I have been given data files in the following configuration and have
been puzzling about how to read them in. First I will give a snippet
of the beginning of file:
Data File: W
Para File: GABOR_0.gor v 10.6,
Date : 29/10/2007
Time : 13:33
3.00
5.000
Noise SD (deg):
15.000
1 -5.321 -5.321
2 -5.321 -3.991
3 -5.321 -2.661
4 -5.321 -1.330
5 -5.321 0.000
6 -5.321 1.330
7 -5.321 2.661
8 -5.321 3.991
9 -5.321 5.321
10 -3.991 -5.321
11 -3.991 -3.991
12 -3.991 -2.661
13 -3.991 -1.330
14 -3.991 0.000
15 -3.991 1.330
16 -3.991 2.661
17 -3.991 3.991
18 -3.991 5.321
19 -2.661 -5.321
20 -2.661 -3.991
21 -2.661 -2.661
22 -2.661 -1.330
23 -2.661 0.000
24 -2.661 1.330
25 -2.661 2.661
26 -2.661 3.991
27 -2.661 5.321
28 -1.330 -5.321
29 -1.330 -3.991
30 -1.330 -2.661
31 -1.330 -1.330
32 -1.330 0.000
33 -1.330 1.330
34 -1.330 2.661
35 -1.330 3.991
36 -1.330 5.321
37 0.000 -5.321
38 0.000 -3.991
39 0.000 -2.661
40 0.000 -1.330
41 0.000 0.000
42 0.000 1.330
43 0.000 2.661
44 0.000 3.991
45 0.000 5.321
46 1.330 -5.321
47 1.330 -3.991
48 1.330 -2.661
49 1.330 -1.330
50 1.330 0.000
51 1.330 1.330
52 1.330 2.661
53 1.330 3.991
54 1.330 5.321
55 2.661 -5.321
56 2.661 -3.991
57 2.661 -2.661
58 2.661 -1.330
59 2.661 0.000
60 2.661 1.330
61 2.661 2.661
62 2.661 3.991
63 2.661 5.321
64 3.991 -5.321
65 3.991 -3.991
66 3.991 -2.661
67 3.991 -1.330
68 3.991 0.000
69 3.991 1.330
70 3.991 2.661
71 3.991 3.991
72 3.991 5.321
73 5.321 -5.321
74 5.321 -3.991
75 5.321 -2.661
76 5.321 -1.330
77 5.321 0.000
78 5.321 1.330
79 5.321 2.661
80 5.321 3.991
81 5.321 5.321
END
1
5.000
15.000
118 -101 -84 56 72 157 -158 77 21 -238 -171 -257 -34 78 -228 -122 328 144 23 -168 159 106 -60 330 -139 33 -22 215 95 -89 -201 199 364 -70 352 -25 -108 -100 23 105 -42 106 164 123 289 77 50 16 -132 51 140 105 229 135 -171 75 83 -165 133 -131 -8 -132 149 165 60 31 -305 336 -16 73 -10 212 65 12 193 180 -82 137 7 -146 249
59 -180 -73 -278 -124 -22 107 164 73 160 -136 -37 119 -10 100 -4 0 182 152 35 256 70 148 -9 -4 0 49 128 -44 21 36 143 -114 -59 -110 7 -40 -80 -70 99 27 -27 184 293 257 -83 44 101 65 -68 -167 158 94 -39 130 59 -349 34 47 -108 70 141 55 138 -20 -83 81 -15 74 -107 140 -280 107 -325 83 125 -64 200 -122 123 -280
22
2
5.000
15.000
93 313 312 -113 230 160 -13 -42 145 -31 184 -287 -92 5 48 -62 5 110 -58 215 73 -171 -15 219 -20 94 -37 -13 -198 175 -179 12 -47 27 186 -180 30 0 -25 -91 164 117 -155 188 149 -28 24 5 20 -31 52 -78 45 -133 -63 -77 75 -183 130 -119 -47 -8 -40 64 209 166 48 -65 -244 111 110 -106 -248 -21 -173 2 -38 111 30 -174 257
59 -180 -73 -278 -124 -22 107 164 73 160 -136 -37 119 -10 100 -4 0 182 152 35 256 70 148 -9 -4 0 49 128 -44 21 36 143 -114 -59 -110 7 -40 -80 -70 99 27 -27 184 293 257 -83 44 101 65 -68 -167 158 94 -39 130 59 -349 34 47 -108 70 141 55 138 -20 -83 81 -15 74 -107 140 -280 107 -325 83 125 -64 200 -122 123 -280
21
...
The first bit up to "END" can be skipped. That's the first 90 lines.
Then I need to do something like this:
while data still exist in the file
{
skip 3 lines
scan 81 values into temp
scan 82nd value, which is 11, 12, 21, 22. Depending on value, temp is
added to one of these vars
}
The data are written in clumps.
Each clump has 3 lines with info I don't need.
Then it has 81 values which are the actual data I want to read into
some variable "temp"
Then the 82nd value tells me which of 4 variables to add temp onto.
Any tips on how to approach this using scan() greatly appreciated. I
know I can use skip as an argument to scan.
Thanks very much for any help!
Bill
More information about the R-help
mailing list