R语言计算多元分布频率

R语言计算多元分布频率

library(spatstat)
library(forestSAS)

treedataX <- read.table("D:/R-data/treedataX.txt", header=T,sep="\t")

treedataX
tree.pppX <- ppp(x=treedataX$x,y=treedataX$y,window=owin(c(0,30),c(0,25)),marks=treedataX[,c(1,4:11)])
tree.pppX

nnsp.N4 <- nnIndex(tree.pppX,id= tree.pppX$marks$tree.id, N=4,smark="sp.code",buffer=TRUE)

nnsp.N4
summary(nnsp.N4)

nnMarks.N4 <- nnIndex(tree.pppX,id=tree.pppX$marks$tree.id,N=4,smark=c("dbh.cm","h.m","storey"),buffer=TRUE)
summary(nnMarks.N4)

nnsp.R2 <- nnIndex(tree.pppX,id=tree.pppX$marks$tree.id,R=2,smark="sp.code",buffer=TRUE)
summary(nnsp.R2)

nnMarks.R2 <- nnIndex(tree.pppX,id=tree.pppX$marks$tree.id,R=2,smark=c("dbh.cm","h.m","storey"),buffer=TRUE)
summary(nnMarks.R2)

nnindices <- nnIndex(tree.pppX,N=4,id=tree.pppX$marks$tree.id,smark=c("sp.code","dbh.cm","storey","crownwid.m","group","biomass.kg","quality","x","y"),buffer=FALSE,buf.xwid=5,buf.ywid=5)
summary(nnindices)

M <- fsasN4(nnindices$nnsp.code,match.fun=mingling)
H <- fsasN4(nnindices$nnstorey,match.fun=differ)
S <- fsasN4(nnindices$nngroup,match.fun=ideal,para="Climax")
Q <- fsasN4(nnindices$nnquality,match.fun=ideal,para=c("Excellent","Good"))
C <- fsasN4(nnoverlap(nnindices$nncrownwid.m,nnindices$nndist),match.fun=crowding)
W <- fsasN4(nnangle(nnindices$nndist,nnindices$nnx, nnindices$nny)$nnangle,match.fun=uniform.angle,para=72)
U <- fsasN4(nnindices$nndbh.cm,match.fun=dominance)
B <- fsasN4(nnindices$nnbiomass.kg,match.fun=dominance)

#绘制一元频率分布柱状图
M
barplot( M$Ifreq,xlab="树种混交度 Species mingling (M)",ylab="相对频率 Relative frequency")
barplot( U$Ifreq,xlab="树种大小比数 Species dominance (U)",ylab="相对频率 Relative frequency")
barplot( C$Ifreq,xlab="树种密集度 Species crowding (C)",ylab="相对频率 Relative frequency")
barplot( W$Ifreq,xlab="树种角尺度 Species uniform.angle (W)",ylab="相对频率 Relative frequency")

#一元分布频率
freqU <- table(W$result$index)
freqU <- freqU/sum(freqU)
frameU <- data.frame(freqU)
frameU
#二元分布频率
WUdatanobuffer <- data.frame(Wi=W$result$index, Ui=U$result$index)
freqWU <- table(WUdatanobuffer)
freqWU <- freqWU/sum(freqWU)
frameWU <- data.frame(freqWU)
frameWU
#三元分布频率
tridatanobuffer <- data.frame(Wi=W$result$index, Ui=U$result$index, Ci=C$result$index)
trifreq <- table(tridatanobuffer)
trifreq <- trifreq/sum(trifreq)
trifreq <- data.frame(trifreq)
trifreq
#四元分布频率
quadatanobuffer <- data.frame(Wi=W$result$index, Ui=U$result$index, Ci=C$result$index, Mi=M$result$index)
quafreq <- tabke(quadatanobuffer)
quafreq <- quafreq/sum(quafreq)
quafreq <- data.frame(quafreq)
quafreq

在这里插入图片描述
明明很简单,但是数学差的就是想不到

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值