диагональная замена в r-коррелограмме - PullRequest
0 голосов
/ 30 апреля 2018

Я довольно новичок в R. Я пытаюсь заменить основную диагональ коррелограммы (она, очевидно, состоит из тех). Я создал векторы для коррелограммы и использовал функцию cor () из пакета cocron для создания коррелограммы. Я также создал список со значениями, которые мне нужны вместо значений в коррелограмме, состоящих из внутренних достоверностей векторов коррелограммы.

library(cocron)
library(fmsb)
# defining correlated variables
JOB_ins = subset(df,select=c("q9","Rq10_new","q11","q12"))
INT_to_quit = subset(df,select=c("q13","q14","Rq15_new","q16"))
Employability = subset(df,select=c("q17","q18","q19","q20"))
Mobility_pref = subset(df,select=c("Rq21","Rq22","Rq23","Rq24","Rq25"))
Career_self_mgmt = subset(df,select=c("q26","q27","q28","q29","q30"
                                         ,"q31","q32","q33"))


# subsetting dataframes 
x = subset(df,select=c(JOB_ins, INT_to_quit, Employability
                                          ,Mobility_pref,Career_self_mgmt))

#creating a correlation matrix

corrmat = cor(x)

#creating Cronbach Alpha reliabilities vector for diagonal replacement
dlist=list(round(CronbachAlpha(JOB_ins),2),round(CronbachAlpha(Int_to_quit),2)
                           ,round(CronbachAlpha(Employability),2)
                           ,round(CronbachAlpha(Mobility_pref),2)
                           ,round(CronbachAlpha(Career_self_mgmt),2))
#replacing the main diagonal
diag(corrmat)=dlist

Делая это, я заменяю основную диагональ, но, похоже, я также превращаю свою коррелограмму из матрицы в вектор. Любая идея, как мне предотвратить это или обратить вспять это?

1 Ответ

0 голосов
/ 30 апреля 2018

Во-первых, вы можете использовать вектор вместо списка, заменив list(round(CronbachAlpha(JOB_ins),2),...) на c(round(CronbachAlpha(JOB_ins),2),...)

Во-вторых, вы можете легко преобразовать вектор в матрицу. Пример: matrix(c(1,2,3,4), nrow = 2) преобразует вектор c(1,2,3,4) в следующую матрицу 2x2:

     [,1] [,2]
[1,]    1    3
[2,]    2    4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...