【问题标题】:Read txt file as a numeric array in R将txt文件作为R中的数字数组读取
【发布时间】:2021-08-02 05:58:35
【问题描述】:

我在 MAC (10.14.6) 中使用 RStudio,我正在尝试读取如下所示的文本文件

5:[0.12126984126984124, 0.11682539682539679, 0.14666666666666664, 0.07269841269841269, 0.06984126984126983, 0.0911111111111111, 0.1092063492063492, 0.12253968253968253, 0.08698412698412696, 0.09523809523809523, 0.12222222222222222, 0.10761904761904759]

我已经使用了“read”、“read.delim”和“read.csv”的多次迭代,而且几乎都是一样的

> data.matrix(read.delim("data.txt",sep=','))

     X5..0.12126984126984124 X0.11682539682539679 X0.14666666666666664 X0.07269841269841269 X0.06984126984126983
     X0.0911111111111111 X0.1092063492063492 X0.12253968253968253 X0.08698412698412696 X0.09523809523809523
     X0.12222222222222222 X0.10761904761904759.

使用“unlist”、“as.numeric”、“as.character” 不会产生任何结果,因为每个数字前面都有 X。有没有人有正确阅读此文件的想法?

【问题讨论】:

标签: r csv sorting


【解决方案1】:

如果你只对阅读数字感兴趣,那么你首先要删除开头的5:[,最后还要删除]。然后使用scansep = ',' 阅读

scan(text=gsub("^.*\\[|\\]", "", string), sep = ",")
Read 12 items
 [1] 0.12126984 0.11682540 0.14666667 0.07269841 0.06984127 0.09111111
 [7] 0.10920635 0.12253968 0.08698413 0.09523810 0.12222222 0.10761905

【讨论】:

  • 感谢您的回复。我最终使用了as.numeric(scan("data.txt",sep=","))
猜你喜欢
  • 1970-01-01
  • 2021-12-14
  • 2016-05-03
  • 1970-01-01
  • 2019-02-19
  • 2021-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多