Изменяет метку /dimnames для metaSEM
Я ищу способ изменения меток /dimnames на импортированных данных, используемых для metaSEM. В частности, я ищу способ обозначить каждое исследование и изменить нечеткие имена, чтобы фактически представлять исследуемые переменные. Самый простой способ проиллюстрировать, что я хотел бы сделать, - это пройтись по примеру.
При использовании следующего кода для импорта двух корреляционных матриц
cat("1.0\n0.3 1.0\n0.4 0.5 1.0\n1.0\nNA NA\n0.4 NA 1.0",
file="lowertriangle.dat", sep="")
my.lowertri <- readLowTriMat(file = "lowertriangle.dat", no.var = 3)
my.lowertri
Я получаю следующие результаты
$`1`
x1 x2 x3
x1 1.0 0.3 0.4
x2 0.3 1.0 0.5
x3 0.4 0.5 1.0
$`2`
x1 x2 x3
x1 1.0 NA 0.4
x2 NA NA NA
x3 0.4 NA 1.0
Что я хотел бы сделать, так это назвать корреляцию именем исследования ('1' = 'Johnson et al (2010)) и назвать фактические переменные вместо использования значений по умолчанию x* (например, x1 = "добросовестность").
Я относительно новичок в этом, поэтому я надеюсь, что мне просто не хватает чего-то действительно простого.
Спасибо!
1 ответ
Добро пожаловать на сайт. Это, вероятно, должно быть на Stackru.
Посмотрите на функции names
, rownames
а также colnames
, Помните, что вы имеете дело со списком, так как функция class
скажу тебе.
Простое решение может быть:
a <- matrix(sample(c(0,1), 9, replace = T), 3, 3)
b <- matrix(sample(c(0,1), 9, replace = T), 3, 3)
example <- list("1" = a,"2"= b)
example
names(example) <- c("Johnson et al (2010)","Einstein (1905)")
rownames(example[[1]]) <- c("Conscientiousness","Conscientiousness","Conscientiousness")
colnames(example[[2]]) <- c("Conscientiousness","Conscientiousness","Conscientiousness")
Если вы используете панель поиска, вы, вероятно, найдете множество ресурсов, которые указывают, как изменить атрибуты имен списков.