Hi @JoJakob,
Welcome to the RStudio Community Forum.
Your ri= vector needs to have the same number of elements as the others in the dataframe (here 10).
So, this works (assuming all the correlations are = 0.5):
library(metafor)
my_df <- data.frame(
nBL_T = c(16, 16, 22, 15, 38, 38, 28, 207, 26, 15),
mBL_T = c(3.8, 3.3, 117.90, 16.07, 34.3, 60.65, 25.00, 73.26, 13.2, 35.47),
mEoT_T = c(2.1, 2.3, 74.33, 10.63, 20.32, 56.1, 14.29, 46.70, 5.1, 23),
sdBL_T = c(0.9, 1.1, 29.89, 7.46, 5.34, 6.69, 4.18, 22.18, 4.0, 8.56),
sdEoT_T = c(1.5, 1.3, 44.02, 8.12, 9.99, 9.02, 6.43, 36.84, 4.0, 10.39)
)
my_df
str(my_df)
es_result <- escalc(measure= "SMCC",
m1i= mBL_T,
m2i= mEoT_T,
sd1i= sdBL_T,
sd2i= sdEoT_T,
ri= c(rep(0.5, 10)),
ni= nBL_T,
data=my_df)
summary(es_result)
BTW, within() is an R function - good practice is not to name your object using a function name.
HTH