Изменяет метку /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")

Если вы используете панель поиска, вы, вероятно, найдете множество ресурсов, которые указывают, как изменить атрибуты имен списков.

Другие вопросы по тегам