【发布时间】:2014-02-13 10:07:53
【问题描述】:
我有一个如下所示的数据:
library(zoo)
dt <- read.csv("http://dpaste.com/1612639/plain/",header=FALSE,fill=FALSE,na.strings = "")
dt <- na.locf(dt)
> dt
V1 V2 V3 V4 V5
1 FOO yyy Unigene126925_All Unigene137063_All 0.238087
2 FOO yyy Unigene126925_All Unigene24551_All 0.374231
3 FOO yyy Unigene126925_All Unigene31835_All 0.367897
4 BAR xxx Unigene126925_All Unigene165366_All 0.247844
5 BAR xxx Unigene126925_All Unigene111784_All 0.344493
我想要做的是根据 V1 对它们进行分组,每组的内容是一个数据框,其值从上述 V3 到 V5。 它看起来像这样:
组 FOO
V1 V2 V3
1 Unigene126925_All Unigene137063_All 0.238087
2 Unigene126925_All Unigene24551_All 0.374231
3 Unigene126925_All Unigene31835_All 0.367897
组栏
V1 V2 V3
1 Unigene126925_All Unigene165366_All 0.247844
2 Unigene126925_All Unigene111784_All 0.344493
如何在 R 中实现这一点? 稍后对于每个组,我将对其数据框应用一些函数。
【问题讨论】:
-
baseR、data.table、plyr等中有大量函数,您可以在其中对分组数据应用函数,而无需显式将其拆分为单独的数据帧。