各種 (列) の各プロット (行) での木の数を示すデータ フレームがあります。
列に 115 種の木があり、6264 のプロットがあります
頭(特に)
02 03 04 05 06 07 08S 09 10 11 12P 12V 13B 13C 13G 14 15P 15S 16 17C
600005 0 0 0 0 0 0 0 0 16 0 0 0 0 0 0 0 0 32 0 0
600008 0 0 0 0 0 0 0 0 0 0 0 8 0 0 0 0 0 0 0 5
600012 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
600030 3 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
600033 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
600035 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
各プロットに存在する各種の割合を計算しようとしています。私はこれをやろうとしました:
apply(esp,c(1,2), function(x){ifelse(x>0, x/sum(x)*100,0)})
私が欲しいのは、さまざまなプロットを線として、存在する種の割合を列として持つデータ フレームです。
ご協力ありがとうございました。
ばかげた質問のために戻ってきました。各プロットでの各種の割合を含むデータ フレームを取得したので、1 つの種が 80% を超えるすべての「純粋な」プロットを選択したいと考えています。
1 つの種の行を選択する方法を知っています。
pur<-prop[which(prop[,1]>80),]
これは機能し、私が望んでいたものを与えてくれましたが、115列あるので、ループで試してみました:
for (i in 1:115){
prop[which(prop[,i]>80),]
}
しかし、うまくいきませんでした。
私も適用してみましたが、 which() は関数ではないため、どちらも機能しませんでした。
apply(prop,2,which(prop[,1]>80))
ありがとうございました