首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在R- Pls中自动提取数据并保存为文本文件我需要非常基本的教程

如何在R- Pls中自动提取数据并保存为文本文件我需要非常基本的教程
EN

Stack Overflow用户
提问于 2014-04-05 20:08:51
回答 2查看 165关注 0票数 0

我是一个使用R的新手,几乎不知道如何写几行代码。

我正在处理一个大型数据集,它需要将"data“+ "header”的每一行提取到单独的文本文件中,并以col1/row2内容的名称保存...例如

代码语言:javascript
复制
Station Depth   4000 µm 2000 µm 1000 µm 500 µm  250 µm   125 µm 63 µm   4 µm    1 µm    0.4 µm
M1-2    0.9 0.42    0.56    0.63    2.67    32.30   41.92   18.62   0.00    2.88    0.00
M2-2    6.9 6.31    6.08    14.05   18.10   17.79   10.65   7.63    0.00    18.89   0.49
M3-2    3.3 0.26    1.74    4.71    11.78   66.53   5.38    2.01    0.00    7.27    0.32
M4-2    3.8 3.90    6.30    19.81   29.91   32.87   5.17    0.39    0.00    1.57    0.08
M5-2    4   0.00    1.42    5.40    18.94   42.06   22.57   5.47    1.18    2.37    0.59

例如,我需要提取标题行和数据行1,并使用M1-2将其保存到文本文件中。然后,对data row2 (Header+data row2)重复相同的步骤,并另存为M2-2,以此类推...

我只是个新手!

EN

回答 2

Stack Overflow用户

发布于 2014-04-05 20:27:45

类似地,在base

代码语言:javascript
复制
lapply(rownames(dat),function(x) write.csv(dat[x,],file=paste0(x,'.txt')))
票数 2
EN

Stack Overflow用户

发布于 2014-04-05 20:20:23

如果:

  • 您的数据框名为STATION-VALUE.dat
  • you Station值是唯一的
  • 您希望名为STATION-VALUE.dat
  • you的文件不需要行名

然后:

代码语言:javascript
复制
library(plyr)
d_ply(dat, .(Station), .fun=function(x) {
  write.table(x, sprintf("%s.dat", x[1,]$Station), 
              row.names=FALSE, col.names=TRUE, sep="\t")
})

应该行得通。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22880697

复制
相关文章

相似问题

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