Skip to content

Commit

Permalink
continuous meta-analysis now running
Browse files Browse the repository at this point in the history
  • Loading branch information
bwallace committed May 11, 2010
1 parent b3036fe commit 3d68c34
Show file tree
Hide file tree
Showing 5 changed files with 42 additions and 3 deletions.
4 changes: 3 additions & 1 deletion R/openmetar/R/continuous_methods.r
Expand Up @@ -19,7 +19,9 @@ continuous.random <- function(contData, params){
# call out to the metafor package
if (length(contData@mean1) > 0) {
res<-rma.uni(n1i=contData@N1, n2i=contData@N2,
m1i=contData@mean1, m2i=contData@mean2, slab=contData@studyNames,
m1i=contData@mean1, m2i=contData@mean2,
sd1i=contData@se1, sd2i=contData@se2,
slab=contData@studyNames,
method=params$rm.method, measure=params$measure,
level=params$conf.level, digits=params$digits)
}
Expand Down
2 changes: 1 addition & 1 deletion R/src/continuous_methods.r
Expand Up @@ -20,7 +20,7 @@ continuous.random <- function(contData, params){
if (length(contData@mean1) > 0) {
res<-rma.uni(n1i=contData@N1, n2i=contData@N2,
m1i=contData@mean1, m2i=contData@mean2,
sd1i=contData@sd1, sd2i=contData@sd2,
sd1i=contData@se1, sd2i=contData@se2,
slab=contData@studyNames,
method=params$rm.method, measure=params$measure,
level=params$conf.level, digits=params$digits)
Expand Down
Binary file added doc/data_structures.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/data_structures.ppt
Binary file not shown.
39 changes: 38 additions & 1 deletion meta_py_r.py
Expand Up @@ -170,8 +170,25 @@ def ma_dataset_to_simple_continuous_robj(table_model, var_name="tmp_obj"):
Ns2_str = _get_str(raw_data, 3)
means2_str = _get_str(raw_data, 4)
SDs2_str = _get_str(raw_data, 5)

r_str = "%s <- new('ContinuousData', \
N1=c(%s), mean1=c(%s), se1=c(%s), \
N2=c(%s), mean2=c(%s), se2=c(%s), \
y=c(%s), SE=c(%s), studyNames=c(%s))" \
% (var_name, Ns1_str, means1_str, SDs1_str, \
Ns2_str, means2_str, SDs2_str, \
ests_str, SEs_str, study_names)

else:
print "NO RAW DATA"
print "no raw data... using effects"
r_str = "%s <- new('ContinuousData', \
y=c(%s), SE=c(%s), studyNames=c(%s))" \
% (var_name, ests_str, SEs_str, study_names)

print "executing: %s" % r_str
ro.r(r_str)
print "ok."
return r_str


def _get_str(M, col_index, reverse=True):
Expand Down Expand Up @@ -257,6 +274,26 @@ def ma_dataset_to_simple_binary_robj(table_model, var_name="tmp_obj"):
print "ok."
return r_str

def run_continuous_ma(function_name, params, res_name = "result", cont_data_name = "tmp_obj"):
params_df = ro.r['data.frame'](**params)
r_str = "%s<-%s(%s, %s)" % (res_name, function_name, cont_data_name, params_df.r_repr())
print "\n\n(run_continuous_ma): executing:\n %s\n" % r_str
ro.r(r_str)
result = ro.r("%s" % res_name)

# parse out text field(s). note that "plot names" is 'reserved', i.e., it's
# a special field which is assumed to contain the plot variable names
# in R (for graphics manipulation).
text_d = {}
image_var_name_d = None
for text_n, text in zip(list(result.getnames())[1:], list(result)[1:]):
if not text_n == "plot_names":
text_d[text_n]=text
else:
image_var_name_d = _rls_to_pyd(text)

return {"images":_rls_to_pyd(result[0]), "image_var_names":image_var_name_d,
"texts":text_d}

def run_binary_ma(function_name, params, res_name = "result", bin_data_name="tmp_obj"):
params_df = ro.r['data.frame'](**params)
Expand Down

0 comments on commit 3d68c34

Please sign in to comment.