在R中将一个字符向量列表写入单个文件。
在R中将一个字符向量列表写入单个文件。
我有一份字符向量列表,我想把它们写入一个包含所有字符向量的单个文件中。以下是我需要的示例:
>str(mylist) List of 19 $ geneset1 : chr [1:140] "ASGR2" "ATXN7L3" "BCL6B" "C6orf211" ... $ geneset2 : chr [1:174] "CKS1B" "CREBL2" "CTNNB1" "CTTN" ... $ geneset3 : chr [1:346] "AGTR1" "C6" "C6orf211" "CCNK" ... $ geneset4 : chr [1:259] "ASGR2" "ATF7IP" "ATXN7L3" "CKS1B" ...
我想得到的输出文件应该像这样:
#myfile >geneset1 ASGR2 ATXN7L3 BCL6B C6orf211 >geneset2 ASGR2 ATXN7L3 BCL6B C6orf211 >geneset3 AGTR1 C6 C6orf211 CCNK
我的方法是这样的:
writeLines(unlist(lapply(mylist, FUN=function(x)paste(x, collapse=" "))), con="test.txt")
但是,我不知道如何在行首添加“>”
谢谢
admin 更改状态以发布 2023年5月20日
您可以使用for循环:
out=stdout() X <- list(geneset1= c("ASGR2","ATXN7L3","BCL6B","C6orf211"), geneset2= c("CKS1B","CREBL2","CTNNB1","CTTN"), geneset3= c("AGTR1","C6","C6orf211","CCNK" ), geneset4= c("ASGR2","ATF7IP","ATXN7L3","CKS1B" ) ) for(i in names(X)) { cat(">", i, "\n", file=out) cat(X[[i]], "\n", file=out) }