Введение о моем наборе данных: это данные анкеты, в которых упоминаются различные причины антисоциального поведения студентов.И я хочу провести факторный анализ, чтобы организовать причины, аналогичные фактору.
Например, есть одна причина, по которой учащиеся ведут антисоциальное поведение из-за образования их родителей, а другая причина в том, что это происходит из-за образования их родителей.Между этими двумя причинами есть некоторое сходство, поэтому мне интересно, можно ли объединить эти две причины в один фактор, поэтому я хочу провести факторный анализ, чтобы увидеть, могу ли я объединить разные причины в одном факторе.
Для проведения факторного анализа, удаление моего значения (те, которые меньше, чем среднее значение минус 3 стандартных отклонения, и больше, чем среднее значение, добавляют 3 стандартных отклонения) очень важно из моего понимания.Однако я не уверен, необходимы ли они для данных вопросника, и если они необходимы или, по крайней мере, они не являются полностью избыточными, то с помощью какого кода R я смогу достичь этой цели?
Я провел некоторое исследование по методу медианного абсолютного отклонения (MAD), которое могло бы частично выделить выбросы.И я также написал код R следующим образом:
mad.mean.D.O <- as.numeric(D.O.Mean.data$D.O_Mean)
median(mad.mean.D.O)
mad(mad.mean.D.O, center = median(mad.mean.D.O), constant = 1.4826,
na.rm = FALSE, low = FALSE, high = FALSE)
print(Upper.MAD <- (median(mad.mean.D.O)+3*(mad(mad.mean.D.O, center = median(mad.mean.D.O), constant = 1.4826,
na.rm = FALSE, low = FALSE, high = FALSE))))
print(Lower.MAD <- (median(mad.mean.D.O)-3*(mad(mad.mean.D.O, center = median(mad.mean.D.O), constant = 1.4826,
na.rm = FALSE, low = FALSE, high = FALSE))))
D.O.clean.mean.data <- D.O.Mean.data %>%
select(ID_t,
anonymity,
fail_exm,
pregnant,
deg_job,
new_job,
crowded,
stu_req,
int_sub,
no_org,
child,
exm_cont,
lec_sup,
fals_exp,
fin_prob,
int_pro,
family,
illness,
perf_req,
abroad,
relevanc,
quickcash,
deg_per,
lack_opp,
prac_work,
D.O_Mean) %>%
filter(D.O_Mean < 4.197032 & D.O_Mean > 0.282968)
Этот код R работает.Однако мне просто интересно, есть ли другие методы, которые могли бы достичь той же цели, но в более простом подходе.
Кроме того, мой набор данных выглядит следующим образом: 
Все переменные являются данными вопросника, которые измеряются по шкале Ликерта.И все это причины антисоциального поведения.Например, первые участники, она / он дает 1 анонимности, что означает, что не совсем точно, он / она думает, что анонимность не совсем способствует его антисоциальному поведению.
Я был бы очень благодарен за ваш вклад здесь.