Displaying 2 results from an estimated 2 matches for "agg_g".
Did you mean:
agg
2010 Mar 04
1
ifthen() question
...2)/(2*(n.1+n.2))
PSI.inv <- solve(PSI)
a <- rowSums(PSI.inv)/sum(PSI.inv)
var.g <- 1/sum(PSI.inv)
g <- sum(g*a)
out<-cbind(g,var.g, n.1, n.2)
return(out)
}
# automating this procedure for all rows of df. This format works perfect
when there is > 1 id per row only:
agg_g <- function(id, g, n.1, n.2, cor = .50) {
st <- unique(id)
out <- data.frame(id=rep(NA,length(st)))
for(i in 1:length(st)) {
out$id[i] <- st[i]
out$g[i] <- aggs(g=g[id==st[i]], n.1= n.1[id==st[i]],
n.2 = n.2[id==st[i]], cor)[1]
out$var.g[i]...
2010 Mar 04
0
ifthen() question -- whoops--ifelse()
...it into the iftelse statement:
lid <- sum(match(id, st[i], nomatch = 0))
out$var.g[i]<-ifelse(lid ==1, meta$var.g[id==st[i]],
aggs(g=g[id==st[i]],
n.1= n.1[id==st[i]],
n.2 = n.2[id==st[i]], cor)[2])
#full function:
agg_g <- function(meta,var.g, id, g, n.1, n.2, cor = .50) {
meta$var.g <- var.g
st <- unique(id)
out <- data.frame(id=rep(NA,length(st)))
for(i in unique(id)) {
out$id[i] <- st[i]
out$g[i] <- aggs(g=g[id==st[i]], n.1= n.1[id==st[i]],
n.2 = n.2[...