#--- SET UP
N = 1000
p = 5
X = array(rnorm(N*p),c(N,p))
n1=100
n2=200
s1 = sampling::srswor(n1,N)
s2 = sampling::srswor(n2,N)
id1=(1:N)[s1==1]
id2=(1:N)[s2==1]
d1=rep(N/n1,n1)
d2=rep(N/n2,n2)
X1 = X[s1==1,]
X2 = X[s2==1,]
re <- harmonize(X1,d1,id1,X2,d2,id2)
colSums(re$w1*X1)
colSums(re$w2*X2)
#--- if the true totals is known
totals <- c(N,colSums(X))
re <- harmonize(X1,d1,id1,X2,d2,id2,totals)
colSums(re$w1*X1)
colSums(re$w2*X2)
colSums(X)
Run the code above in your browser using DataLab