0

下面的文本是文本格式的输出。我想使用 R 仅保留或提取字符串的数字部分。例如,我想从包含以下文本的文件中提取 56.1129(作为数字)。我正在逐行阅读文本,并想提取与“1 Animal”相关的值。如果我可以将它们转换为列并提取第 2 行(方差)和第 3 行(pheno1),那就太好了。

---------------------------- -------------------------------------
           - - - Results from analysis of BBBt - - -

   1 Animal                   56.1129    
   2 Variance                 47.6055    
   3 pheno1  1                 103.72       0.92562    
Her1        = Animal     1/pheno1     3=          0.5410    0.0162
Notice: The parameter estimates are followed by their approximate standard errors.
----------------------------------------------------------------
4

1 回答 1

4

一种选择是将其视为固定宽度文件并使用read.fwf

txt <- "---------------------------- -------------------------------------
           - - - Results from analysis of BBBt - - -

   1 Animal                   56.1129    
   2 Variance                 47.6055    
   3 pheno1  1                 103.72       0.92562    
Her1        = Animal     1/pheno1     3=          0.5410    0.0162
Notice: The parameter estimates are followed by their approximate standard errors.
----------------------------------------------------------------"

读取数据:

read.fwf(textConnection(txt), widths=c(4, 23, 10), skip=3, nrows=3)

结果是一个数据框,您可以根据需要对其进行操作。

  V1                      V2       V3
1  1  Animal                  56.1129
2  2  Variance                47.6055
3  3  pheno1  1              103.7200
于 2012-09-07T13:55:10.397 回答