I have a string that looks like this (the text is actually much longer):
".296.294.255.268.313.278.311.270.290.305.322.252.276.286.301.305.264.301.251.269.274.311.304.
230.280.264.327.301.301.265.287.285.306.265.282.319.235.262.278.249.239.284.237.249.289.250.
282.240.256.287.303.310.314.242.302.289.268.315.264.293.261.298.310.242.253.299.278.272.333.
272.295.306.276.317.286.250.272.272.274.282.308.262.285.326.321.285.270.270.241.283.305.319.
246.263.311.299.295.315.263.304.279.286.286.299.282.285.289.298.277.292.296.282.267.245.304.
322.252.265.313.288.310.281.272.266.243.285.309.295.269.295.308.275.316.267.283.311.300.252."
I need to transform it into X lists, each containing 3 numbers. Example:
List1 <- c(296, 294, 255)
List2 <- c(268, 313, 278)
etc.
I tried to split by delimiter with strsplit(split = "\.") but that gives me 1) break lines that I cannot eliminate and 2) I don't seem to be able to convert the values into numbers.
Any suggestions?
Try asplit + scan (given string s)
> asplit(matrix(na.omit(scan(text = s, sep = ".")), 3), 2)
Read 145 items
[[1]]
[1] 296 294 255
[[2]]
[1] 268 313 278
[[3]]
[1] 311 270 290
[[4]]
[1] 305 322 252
[[5]]
[1] 276 286 301
[[6]]
[1] 305 264 301
[[7]]
[1] 251 269 274
[[8]]
[1] 311 304 230
[[9]]
[1] 280 264 327
[[10]]
[1] 301 301 265
[[11]]
[1] 287 285 306
[[12]]
[1] 265 282 319
[[13]]
[1] 235 262 278
[[14]]
[1] 249 239 284
[[15]]
[1] 237 249 289
[[16]]
[1] 250 282 240
[[17]]
[1] 256 287 303
[[18]]
[1] 310 314 242
[[19]]
[1] 302 289 268
[[20]]
[1] 315 264 293
[[21]]
[1] 261 298 310
[[22]]
[1] 242 253 299
[[23]]
[1] 278 272 333
[[24]]
[1] 272 295 306
[[25]]
[1] 276 317 286
[[26]]
[1] 250 272 272
[[27]]
[1] 274 282 308
[[28]]
[1] 262 285 326
[[29]]
[1] 321 285 270
[[30]]
[1] 270 241 283
[[31]]
[1] 305 319 246
[[32]]
[1] 263 311 299
[[33]]
[1] 295 315 263
[[34]]
[1] 304 279 286
[[35]]
[1] 286 299 282
[[36]]
[1] 285 289 298
[[37]]
[1] 277 292 296
[[38]]
[1] 282 267 245
[[39]]
[1] 304 322 252
[[40]]
[1] 265 313 288
[[41]]
[1] 310 281 272
[[42]]
[1] 266 243 285
[[43]]
[1] 309 295 269
[[44]]
[1] 295 308 275
[[45]]
[1] 316 267 283
[[46]]
[1] 311 300 252
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With