我有一个非常慢且无法正常工作的 for 循环,它在 1 data.frame 中查找条形码,然后在另一个 data.frame 中搜索该条形码。第二个 data.frame 的 bar_code 可以多次出现。每次找到条形码时,计数器都应该计算条形码存在的次数,并将条形码的数量写入第一个数据帧。
我的尝试:
for(i in 1:length(tcgadataUniek$Tumor_Sample_Barcode)){
for(j in 1:length(hprdDataSorted$Samples.Int1)){
count<-0
if(i==j){
count<-count+1
} else {
count<-count+0
}
hprdDataSorted$Samples.Int2<-count[j]
}
}
第一个 Data.Frame 如下所示(csv):
HUGO.Int1,HUGO.Int2,barcode.Int1
A1CF,APOBEC1,TCGA-B6-A0RS-01A-11D-A099-09
A1CF,TNPO2,TCGA-B6-A0RS-01A-11D-A099-09
A1CF,SYNCRIP,TCGA-B6-A0RS-01A-11D-A099-09
A1CF,KHSRP,TCGA-B6-A0RS-01A-11D-A099-09
A2M,SHBG,TCGA-D8-A1JK-01A-11D-A13L-09
A2M,C11orf58,TCGA-D8-A1JK-01A-11D-A13L-09
A2M,ATF7IP,TCGA-D8-A1JK-01A-11D-A13L-09
AAMP,TH1L,TCGA-A8-A08S-01A-11W-A050-09
AARS,EEF1B2,TCGA-AO-A0JC-01A-11W-A071-09
第二个 Data.frame 包含重复的条形码(csv)
Sample_Barcode
TCGA-A8-A08G-01A-11W-A019-09
TCGA-AO-A03O-01A-11W-A019-09
TCGA-AO-A03O-01A-11W-A019-09
TCGA-B6-A0RS-01A-11D-A099-09
TCGA-BH-A0HP-01A-12D-A099-09
TCGA-BH-A0HP-01A-12D-A099-09
TCGA-BH-A18H-01A-11D-A12B-09
TCGA-BH-A18H-01A-11D-A12B-09
TCGA-BH-A18J-01A-11D-A12B-09
TCGA-D8-A1JK-01A-11D-A13L-09
TCGA-E2-A1BC-01A-11D-A14G-09
TCGA-E2-A1BC-01A-11D-A14G-09
TCGA-E9-A1NH-01A-11D-A14G-09
TCGA-E9-A22B-01A-11D-A159-09
如果barcode.Int1(数据帧1)中的条形码在Sample_barcode中是3倍,则脚本应在脚本正在寻找的barcode.Int1旁边添加3。例如:
HUGO.Int1,HUGO.Int2,barcode.Int1, number_of_times
A1CF,APOBEC1,TCGA-B6-A0RS-01A-11D-A099-09,5