如何解决如何在R中使用dcast将数据从长转换为宽?
尝试从长到宽重新格式化我的数据。
开始于:
head(rna.dat)
sample_barcode gene_name HTSeq__Counts
1: TCGA-CS-4938-01B KRT17 8
2: TCGA-CS-4938-01B SMAD2 6123
3: TCGA-CS-4938-01B BRAF 1512
4: TCGA-CS-4938-01B ANKRD61 16
5: TCGA-CS-4938-01B MTOR 6474
6: TCGA-CS-4938-01B EXOG 582
然后我跑步:
rna.wide=dcast.data.table(rna.dat,sample_barcode~gene_name,value.var="HTSeq__Counts")
Aggregate function missing,defaulting to 'length'
...输出:
sample_barcode A1BG A1CF A2M A2ML1
1: TCGA-CS-4938-01B 1 1 1 1
2: TCGA-CS-4942-01A 1 1 1 1
3: TCGA-CS-4943-01A 1 1 1 1
4: TCGA-CS-5393-01A 1 1 1 1
5: TCGA-CS-5396-01A 1 1 1 1
...即计数值填充为1。
例如,位置[1,1]的值应为36:
rna.dat[rna.dat$sample_barcode=="TCGA-CS-4938-01B" & rna.dat$gene_name=="A1BG",]
sample_barcode gene_name HTSeq__Counts
1: TCGA-CS-4938-01B A1BG 36
过去,我成功地使用了“重塑”,但是该数据有大约400万行,而且似乎从未完成。 dcast只需几秒钟即可完成。
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。