0
注:我很新。 我中的R從R中的兩列計算精度,創建彙總表
INDIVIDUALS CURRENT INFERRED
pop1_1 1 1
pop1_2 1 1
pop1_3 1 2
pop2_1 2 3
pop2_2 2 2
pop2_3 2 2
pop3_1 3 1
pop3_2 3 2
pop3_3 3 3
示出了由類(彈出)標記的獨特的個體,類它們實際上屬於在(CURRENT)和類的數據幀(DF),以將它們放置在由一個算法(INFERRED)。
我想要的是精度的總結,無論是按班級還是整體。因此,與上面的例子中,我喜歡的東西,看起來像:
POP CORRECT ACCURACY
pop1 2 66.7
pop2 2 66.7
pop3 1 33.3
OVERALL 5 55.6
到目前爲止,我有這對整個計算:
for (i in 1:ncol(reducedresults))
{reducedresults[,i]=as.vector(reducedresults[,i])}
correct<-ifelse(reducedresults$CURRENT==reducedresults$INFERRED,1,0)
accuracy<-sum(correct)/length(correct)*100
我想我可以指定行找到的準確性每個班級,但我不知道如何強制它進入總結表,或者如果我甚至在正確的軌道上。
對於初學者來說,它總是一個好主意來存儲你的組變量(這裏POP)在組變量(1,2,3)中與您的個人分開,這使得聚合更容易。你在這裏用'cbind(do.call(rbind,strsplit(as.character(df $ individual),split =「_」)),df)'這樣做,但最好先與它們分開。 – lmo