首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将空格(Tab)分隔的文本文件读入矩阵(向量)

将空格(Tab)分隔的文本文件读入矩阵(向量)
EN

Stack Overflow用户
提问于 2012-10-24 02:08:41
回答 1查看 1.8K关注 0票数 2

我需要在R中后处理一些FORTRAN输出文件。例如,我需要从输出文件中读取20行,并忽略空格。然后将它们转换为向量或矩阵。我在想,有没有更好的方法来忽略空格而保留这些值?谢谢!这是我的Out.txt文件(我只需要最后四列):

代码语言:javascript
复制
 CNC HORIZON     COMPARTMENT      TOTAL      ADSORBED   DISSOLVED  GAS CONC.
 CNC                              (MG/KG)    (MG/KG)    (MG/L)     (MG/L)
 CNC --------------------------------------------------------------------------
 CNC
 CNC
 CNC   1            1             0.4062     0.3737      1.210     0.2419E-05
 CNC   1            2             0.4942     0.4547      1.472     0.2943E-05
 CNC   1            3             0.4930     0.4536      1.468     0.2936E-05
 CNC   1            4             0.4812     0.4427      1.433     0.2865E-05
 CNC   1            5             0.4682     0.4307      1.394     0.2788E-05
 CNC   1            6             0.4550     0.4186      1.355     0.2710E-05
 CNC   1            7             0.4418     0.4065      1.315     0.2631E-05
 CNC   1            8             0.4286     0.3944      1.276     0.2552E-05
 CNC   1            9             0.4154     0.3822      1.237     0.2474E-05
 CNC   1           10             0.4022     0.3701      1.198     0.2395E-05

下面是我的方法:

代码语言:javascript
复制
TOT={}
file_out <- file(paste(pth,'/Out.txt', sep=""))
b=readLines(file_out)
dd=as.numeric(ldply(strsplit(b[88334],"   "))) # I have to adjust the amount of spaces in
                                               # order to separate numbers out
TOT[1]=dd[10]                                  # It is not always 10
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-24 02:56:37

如果您不介意重新标记这些列,这是一个非常简单的read.table练习。

代码语言:javascript
复制
b <- read.table("path/to/Out.txt",skip=5)

  V1 V2 V3     V4     V5    V6        V7
1  CNC  1  1 0.4062 0.3737 1.210 2.419e-06
2  CNC  1  2 0.4942 0.4547 1.472 2.943e-06
3  CNC  1  3 0.4930 0.4536 1.468 2.936e-06
4  CNC  1  4 0.4812 0.4427 1.433 2.865e-06
5  CNC  1  5 0.4682 0.4307 1.394 2.788e-06
6  CNC  1  6 0.4550 0.4186 1.355 2.710e-06
7  CNC  1  7 0.4418 0.4065 1.315 2.631e-06
8  CNC  1  8 0.4286 0.3944 1.276 2.552e-06
9  CNC  1  9 0.4154 0.3822 1.237 2.474e-06
10 CNC  1 10 0.4022 0.3701 1.198 2.395e-06
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13036557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档