Setup and read data
library(tidyverse)
library(psycho)
theme_set(theme_classic(base_size=20))
ppvtAllInfo <- read.csv("PPVT_AOA_hypernyms_accuracy_20190221.csv")
Make function
###code from Molly
#params
MODEL_FORMULA <- "totalCorrect ~ is.Correct + Age_years + totalAttempted"
# coefficient function
get_word_beta <- function(word, mod_formula, df){
relevant_df <- df %>%
filter(item == word)
model <- lm(mod_formula, relevant_df)
summary(model)$coefficients %>%
data.frame() %>%
rownames_to_column("term") %>%
filter(term == 'is.Correct') %>%
mutate(item = word)
}
Get t value for each word
word_coeffs <- map_df(paste("",unique(ppvtAllInfo$item),"",sep=""),
get_word_beta,
as.formula(MODEL_FORMULA),
ppvtAllInfo) %>%
select(item,Estimate,SE=Std..Error, tval=t.value, p=Pr...t..) %>%
arrange(p)
DT::datatable(word_coeffs)
Predict t value
#make df#
predictT <- left_join(word_coeffs, ppvtAllInfo, by="item") %>%
select(item,Estimate,SE,tval,p,hypernyms,BlockNumber,WordNumber,sumStrength,itemMeanCorrect,KupermanAOA) %>%
unique()
Column `item` joining character vector and factor, coercing into character vector
### predict t ###
t_predictors <- data.frame(summary(lm(tval ~ hypernyms + sumStrength + itemMeanCorrect + KupermanAOA, predictT))$coefficients) %>%
rename(SE = Std..Error, t=t.value,p = Pr...t..)
DT::datatable(t_predictors)
Check correlations
corrs <- select(predictT,tval,hypernyms,sumStrength,itemMeanCorrect,KupermanAOA)
corrTable <- correlation(corrs)
print(summary(corrTable))
LS0tDQp0aXRsZTogIkdldCBhbmQgcHJlZGljdCB0IHZhbHVlcyBmb3IgUFBWVCINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQojIyMgU2V0dXAgYW5kIHJlYWQgZGF0YQ0KYGBge3J9DQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmxpYnJhcnkocHN5Y2hvKQ0KDQp0aGVtZV9zZXQodGhlbWVfY2xhc3NpYyhiYXNlX3NpemU9MjApKQ0KDQpwcHZ0QWxsSW5mbyA8LSByZWFkLmNzdigiUFBWVF9BT0FfaHlwZXJueW1zX2FjY3VyYWN5XzIwMTkwMjIxLmNzdiIpDQoNCmBgYA0KDQojIyMgTWFrZSBmdW5jdGlvbg0KYGBge3J9DQojIyNjb2RlIGZyb20gTW9sbHkNCiNwYXJhbXMNCk1PREVMX0ZPUk1VTEEgPC0gInRvdGFsQ29ycmVjdCB+IGlzLkNvcnJlY3QgKyBBZ2VfeWVhcnMgKyB0b3RhbEF0dGVtcHRlZCINCg0KIyBjb2VmZmljaWVudCBmdW5jdGlvbg0KZ2V0X3dvcmRfYmV0YSA8LSBmdW5jdGlvbih3b3JkLCBtb2RfZm9ybXVsYSwgZGYpew0KICByZWxldmFudF9kZiA8LSBkZiAlPiUgDQogICAgZmlsdGVyKGl0ZW0gPT0gd29yZCkNCiAgbW9kZWwgPC0gbG0obW9kX2Zvcm11bGEsIHJlbGV2YW50X2RmKQ0KICBzdW1tYXJ5KG1vZGVsKSRjb2VmZmljaWVudHMgJT4lDQogICAgZGF0YS5mcmFtZSgpICU+JQ0KICAgIHJvd25hbWVzX3RvX2NvbHVtbigidGVybSIpICU+JSANCiAgICBmaWx0ZXIodGVybSA9PSAnaXMuQ29ycmVjdCcpICU+JSANCiAgICBtdXRhdGUoaXRlbSA9IHdvcmQpDQp9DQpgYGANCg0KIyMjIEdldCB0IHZhbHVlIGZvciBlYWNoIHdvcmQNCmBgYHtyfQ0Kd29yZF9jb2VmZnMgPC0gbWFwX2RmKHBhc3RlKCIiLHVuaXF1ZShwcHZ0QWxsSW5mbyRpdGVtKSwiIixzZXA9IiIpLCANCiAgICAgICAgICAgICAgICAgICAgICBnZXRfd29yZF9iZXRhLA0KICAgICAgICAgICAgICAgICAgICAgIGFzLmZvcm11bGEoTU9ERUxfRk9STVVMQSksDQogICAgICAgICAgICAgICAgICAgICAgcHB2dEFsbEluZm8pICU+JSANCiAgc2VsZWN0KGl0ZW0sRXN0aW1hdGUsU0U9U3RkLi5FcnJvciwgdHZhbD10LnZhbHVlLCBwPVByLi4udC4uKSAlPiUgDQogIGFycmFuZ2UocCkNCg0KRFQ6OmRhdGF0YWJsZSh3b3JkX2NvZWZmcykNCmBgYA0KDQojIyMgUHJlZGljdCB0IHZhbHVlDQpgYGB7cn0NCiNtYWtlIGRmIw0KcHJlZGljdFQgPC0gbGVmdF9qb2luKHdvcmRfY29lZmZzLCBwcHZ0QWxsSW5mbywgYnk9Iml0ZW0iKSAgJT4lIA0KICBzZWxlY3QoaXRlbSxFc3RpbWF0ZSxTRSx0dmFsLHAsaHlwZXJueW1zLEJsb2NrTnVtYmVyLFdvcmROdW1iZXIsc3VtU3RyZW5ndGgsaXRlbU1lYW5Db3JyZWN0LEt1cGVybWFuQU9BKSAlPiUgDQogIHVuaXF1ZSgpDQoNCiMjIyBwcmVkaWN0IHQgIyMjDQp0X3ByZWRpY3RvcnMgPC0gZGF0YS5mcmFtZShzdW1tYXJ5KGxtKHR2YWwgfiBoeXBlcm55bXMgKyBzdW1TdHJlbmd0aCArIGl0ZW1NZWFuQ29ycmVjdCArIEt1cGVybWFuQU9BLCBwcmVkaWN0VCkpJGNvZWZmaWNpZW50cykgJT4lIA0KICByZW5hbWUoU0UgPSBTdGQuLkVycm9yLCB0PXQudmFsdWUscCA9IFByLi4udC4uKQ0KDQpEVDo6ZGF0YXRhYmxlKHRfcHJlZGljdG9ycykNCmBgYA0KDQojIyMjIENoZWNrIGNvcnJlbGF0aW9ucw0KYGBge3J9DQpjb3JycyA8LSBzZWxlY3QocHJlZGljdFQsdHZhbCxoeXBlcm55bXMsc3VtU3RyZW5ndGgsaXRlbU1lYW5Db3JyZWN0LEt1cGVybWFuQU9BKQ0KDQpjb3JyVGFibGUgPC0gY29ycmVsYXRpb24oY29ycnMpDQpzdW1tYXJ5KGNvcnJUYWJsZSkNCg0KYGBgDQoNCg==