通过压缩 1 列并转置剩余列来重新排序数据框
Reorder data frame by compressing 1 column and transposing remaining columns
我在 R 中有一个小数据框,它包含两个处理条件以及相应的时间点和这些样本的特定基因的平均基因表达。
> RPmean
来源:本地数据框 [8 x 3]
团体:治疗 [?]
Treatment time.num gExp.mean
(fctr) (dbl) (dbl)
1 cigarette_smoke 1 10.96147
2 cigarette_smoke 2 11.32251
3 cigarette_smoke 4 11.16829
4 cigarette_smoke 24 10.88674
5 control 1 11.09731
6 control 2 10.99542
7 control 4 10.79247
8 control 24 11.25574
我想重新排列它,以便处理列仅列出 cig_smoke 和控制的一个实例,并且 time.num 和 g.Expmean 被转置到行中。
Something like this
Treatment 1 2 4 24
cigarette_smoke 10 11 10 11
control 9 ## ## ##
我试图在 reshape 中解决它,但没有成功。
使用 tidyr
包中的 spread
可以非常有效地处理这种整形:
library(tidyr)
dat %>% spread(time.num, gExp.mean)
# Treatment 1 2 4 24
# 1 cigarette_smoke 10.96147 11.32251 11.16829 10.88674
# 2 control 11.09731 10.99542 10.79247 11.25574
我在 R 中有一个小数据框,它包含两个处理条件以及相应的时间点和这些样本的特定基因的平均基因表达。
> RPmean
来源:本地数据框 [8 x 3] 团体:治疗 [?]
Treatment time.num gExp.mean
(fctr) (dbl) (dbl)
1 cigarette_smoke 1 10.96147
2 cigarette_smoke 2 11.32251
3 cigarette_smoke 4 11.16829
4 cigarette_smoke 24 10.88674
5 control 1 11.09731
6 control 2 10.99542
7 control 4 10.79247
8 control 24 11.25574
我想重新排列它,以便处理列仅列出 cig_smoke 和控制的一个实例,并且 time.num 和 g.Expmean 被转置到行中。
Something like this
Treatment 1 2 4 24
cigarette_smoke 10 11 10 11
control 9 ## ## ##
我试图在 reshape 中解决它,但没有成功。
使用 tidyr
包中的 spread
可以非常有效地处理这种整形:
library(tidyr)
dat %>% spread(time.num, gExp.mean)
# Treatment 1 2 4 24
# 1 cigarette_smoke 10.96147 11.32251 11.16829 10.88674
# 2 control 11.09731 10.99542 10.79247 11.25574