请解释一下这段代码for (i in cancer_types){ admat<-read.csv(str_c(dir,"\\tcga_data\\",i,"\\admat.csv"),check.names=F) positive_rna<-read.csv(str_c(dir,"\\tcga_data\\",i,"\\positive_normalized_rna.csv"),row.names = 1, check.names = F) negative_rna<-read.csv(str_c(dir,"\\tcga_data\\",i,"\\negative_normalized_rna.csv"),row.names = 1, check.names = F) positive_mi<-read.csv(str_c(dir,"\\tcga_data\\",i,"\\positive_normalized_mi.csv"),row.names = 1, check.names = F) negative_mi<-read.csv(str_c(dir,"\\tcga_data\\",i,"\\negative_normalized_mi.csv"),row.names = 1, check.names = F) normal_rna<-read.csv(str_c(dir,"\\tcga_data\\",i,"\\normal_normalized_rna.csv"),row.names = 1, check.names = F) normal_mi<-read.csv(str_c(dir,"\\tcga_data\\",i,"\\normal_normalized_mi.csv"),row.names = 1, check.names = F) positive_delta<-cal_delta_pcc(admat,normal_rna,normal_mi,positive_rna,positive_mi)#"自定义cal_delta_pcc"函数计算正样本和负样本的delta值,并把数据装入positive_delta中 negative_delta<-cal_delta_pcc(admat,normal_rna,normal_mi,negative_rna,negative_mi) wilcox<-delta_wilcox_test(positive_delta,negative_delta,wilcox_pval)#自定义delta_wilcox_test函数计算结果 write.csv(wilcox,str_c(dir,"\\tcga_data\\",i,"\\wilcox.csv"),quote=F,row.names=F) row.names(wilcox)<-str_c(wilcox[,1],"_",wilcox[,2]) positive_delta<-na.omit(positive_delta) row.names(positive_delta)<-str_c(positive_delta[,1],"_",positive_delta[,2]) negative_delta<-na.omit(negative_delta) row.names(negative_delta)<-str_c(negative_delta[,1],"_",negative_delta[,2]) positive_delta<-positive_delta[row.names(positive_delta)%in%row.names(wilcox),] negative_delta<-negative_delta[row.names(negative_delta)%in%row.names(wilcox),] negative_delta<-negative_delta[,3:ncol(negative_delta)] ml_input<-merge(positive_delta,negative_delta,by="row.names") ml_input<-ml_input[,-1] write.csv(ml_input,str_c(dir,"\\tcga_data\\",i,"\\ml_input.csv"),quote=F,row.names=F) }
时间: 2023-11-09 10:05:45 浏览: 80
这段代码是一个循环,使用了一个变量`i`来迭代`cancer_types`列表中的元素。在每次迭代中,代码执行以下操作:
1. 从指定路径读取`admat.csv`文件,并将其存储在名为`admat`的变量中。
2. 从指定路径读取`positive_normalized_rna.csv`文件,并将其存储在名为`positive_rna`的变量中。
3. 从指定路径读取`negative_normalized_rna.csv`文件,并将其存储在名为`negative_rna`的变量中。
4. 从指定路径读取`positive_normalized_mi.csv`文件,并将其存储在名为`positive_mi`的变量中。
5. 从指定路径读取`negative_normalized_mi.csv`文件,并将其存储在名为`negative_mi`的变量中。
6. 从指定路径读取`normal_normalized_rna.csv`文件,并将其存储在名为`normal_rna`的变量中。
7. 从指定路径读取`normal_normalized_mi.csv`文件,并将其存储在名为`normal_mi`的变量中。
8. 使用自定义函数`cal_delta_pcc`计算正样本和负样本的delta值,并将结果存储在名为`positive_delta`和`negative_delta`的变量中。
9. 使用自定义函数`delta_wilcox_test`计算正样本和负样本的Wilcoxon秩和检验结果,并将结果存储在名为`wilcox`的变量中。
10. 将`wilcox`写入到指定路径下的`wilcox.csv`文件中。
11. 根据`wilcox`的第一列和第二列创建行名,并将其存储在`wilcox`的行名中。
12. 从`positive_delta`中删除包含NA值的行,并根据第一列和第二列创建新的行名。
13. 从`negative_delta`中删除包含NA值的行,并根据第一列和第二列创建新的行名。
14. 从`positive_delta`中选择行名在`wilcox`的行名之内的行。
15. 从`negative_delta`中选择行名在`wilcox`的行名之内的行,并仅保留第三列到最后一列的数据。
16. 使用行名合并`positive_delta`和`negative_delta`,并将结果存储在名为`ml_input`的变量中。
17. 从`ml_input`中删除第一列。
18. 将`ml_input`写入到指定路径下的`ml_input.csv`文件中。
以上操作将在每个`cancer_types`列表元素上执行,直到迭代完所有元素为止。
阅读全文