Why is it necessary to parse the variance with partial moments? The additional information generated from partial moments permits a level of analysis simply not possible with traditional summary statistics.
Below are some basic equivalences demonstrating partial moments role as the elements of variance.
set.seed(123); x=rnorm(100); y=rnorm(100)
mean(x)
## [1] 0.09040591
UPM(1,0,x)-LPM(1,0,x)
## [1] 0.09040591
var(x)
## [1] 0.8332328
# Sample Variance:
UPM(2,mean(x),x)+LPM(2,mean(x),x)
## [1] 0.8249005
# Population Variance:
(UPM(2,mean(x),x)+LPM(2,mean(x),x))*(length(x)/(length(x)-1))
## [1] 0.8332328
# Variance is also the co-variance of itself:
(Co.LPM(1,1,x,x,mean(x),mean(x))+Co.UPM(1,1,x,x,mean(x),mean(x))-D.LPM(1,1,x,x,mean(x),mean(x))-D.UPM(1,1,x,x,mean(x),mean(x)))*(length(x)/(length(x)-1))
## [1] 0.8332328
sd(x)
## [1] 0.9128159
((UPM(2,mean(x),x)+LPM(2,mean(x),x))*(length(x)/(length(x)-1)))^.5
## [1] 0.9128159
cov(x,y)
## [1] -0.04372107
(Co.LPM(1,1,x,y,mean(x),mean(y))+Co.UPM(1,1,x,y,mean(x),mean(y))-D.LPM(1,1,x,y,mean(x),mean(y))-D.UPM(1,1,x,y,mean(x),mean(y)))*(length(x)/(length(x)-1))
## [1] -0.04372107
PM.matrix(LPM.degree = 1,UPM.degree = 1,target = 'mean', variable = cbind(x,y), pop.adj = TRUE)
## $clpm
## x y
## x 0.4033078 0.1559295
## y 0.1559295 0.3939005
##
## $cupm
## x y
## x 0.4299250 0.1033601
## y 0.1033601 0.5411626
##
## $dlpm
## x y
## x 0.0000000 0.1469182
## y 0.1560924 0.0000000
##
## $dupm
## x y
## x 0.0000000 0.1560924
## y 0.1469182 0.0000000
##
## $matrix
## x y
## x 0.83323283 -0.04372107
## y -0.04372107 0.93506310
cor(x,y)
## [1] -0.04953215
cov.xy=(Co.LPM(1,1,x,y,mean(x),mean(y))+Co.UPM(1,1,x,y,mean(x),mean(y))-D.LPM(1,1,x,y,mean(x),mean(y))-D.UPM(1,1,x,y,mean(x),mean(y)))*(length(x)/(length(x)-1))
sd.x=((UPM(2,mean(x),x)+LPM(2,mean(x),x))*(length(x)/(length(x)-1)))^.5
sd.y=((UPM(2,mean(y),y)+LPM(2,mean(y),y))*(length(y)/(length(y)-1)))^.5
cov.xy/(sd.x*sd.y)
## [1] -0.04953215
P=ecdf(x)
P(0);P(1)
## [1] 0.48
## [1] 0.83
LPM(0,0,x);LPM(0,1,x)
## [1] 0.48
## [1] 0.83
# Vectorized targets:
LPM(0,c(0,1),x)
## [1] 0.48 0.83
plot(ecdf(x))
points(sort(x),LPM(0,sort(x),x),col='red')
legend('left',legend=c('ecdf','LPM.CDF'),fill=c('black','red'),border=NA,bty='n')
# Joint CDF:
Co.LPM(0,0,x,y,0,0)
## [1] 0.28
# Vectorized targets:
Co.LPM(0,0,x,y,c(0,1),c(0,1))
## [1] 0.28 0.73
# Continuous CDF:
plot(sort(x),LPM.ratio(1,sort(x),x),type = 'l',col='blue',lwd=3,xlab="x")
NNS.PDF(degree=1,x)
## Intervals PDF
## 1: -2.309169 0.0001908930
## 2: -2.264204 0.0003890644
## 3: -2.219239 0.0004040456
## 4: -2.174274 0.0004199092
## 5: -2.129309 0.0004367259
## ---
## 97: 2.007473 0.0014780900
## 98: 2.052438 0.0011915263
## 99: 2.097403 0.0009296535
## 100: 2.142368 0.0008033076
## 101: 2.187333 0.0003484623
Partial moments are asymptotic area approximations of \(f(x)\) akin to the familiar Trapezoidal and Simpson’s rules. More observations, more accuracy…
\[[UPM(1,0,f(x))-LPM(1,0,f(x))]\asymp\frac{[F(b)-F(a)]}{[b-a]}\]
x=seq(0,1,.001);y=x^2
UPM(1,0,y)-LPM(1,0,y)
## [1] 0.3335
\[0.3333=\frac{\int_{0}^{1} x^2 dx}{1-0}\] For the total area, not just the definite integral, simply sum the partial moments: \[[UPM(1,0,f(x))+LPM(1,0,f(x))]\asymp\left\lvert{\int_{a}^{b} f(x)dx}\right\rvert\]
For example, when ascertaining the probability of an increase in \(A\) given an increase in \(B\), the Co.UPM(degree.x,degree.y,x,y,target.x,target.y)
target parameters are set to target.x=0
and target.y=0
and the UPM(degree,target,variable)
target parameter is also set to target=0
.
\[P(A|B)=\frac{Co.UPM(0,0,A,B,0,0)}{UPM(0,0,B)}\]
If the user is so motivated, detailed arguments and proofs are provided within the following: