Как я могу проверить, увеличивается или уменьшается моя зависимая переменная от года к году? - PullRequest
0 голосов
/ 26 февраля 2020

У меня есть набор данных с именем data, который содержит данные о contaminant, моей зависимой переменной. Все наблюдения за один год не зависят от следующих лет. Мои предикторы: Species (три уровня) и Year (три уровня): в основном, мне нужно посмотреть, есть ли увеличение / уменьшение данных о загрязнителях с течением времени для каждого вида в отдельности.

Итак пока я пробовал этот код

    model1<- lm(contaminant~Species*Year,data=data)

            #using Year as numerical (covariate): Indeed, I do not care about 
            the difference in contaminants load among species in each year. 
            I simply want to test if the slopes of each species are significant.

1-й вопрос : правильно ли я поступаю, трактуя Year как число? Или есть другой конкретный c способ / код для обработки временных рядов? Я на самом деле хочу иметь значение p, которое говорит мне, что Series1 на графике ниже (сделан со средними значениями для каждой группы) значительно увеличился с течением времени. введите описание изображения здесь

Мой итоговый вывод выглядит так:

Call: lm(formula = Contaminant ~ Species * Year, data = data)

Residuals:
    Min      1Q  Median      3Q     Max 
-5.1135 -1.3595 -0.1475  1.3225  7.3652 

Coefficients:
                Estimate Std. Error t value Pr(>|t|)    
(Intercept)    -588.6625   996.6024  -0.591 0.556036    
Species2       -823.3590  1320.9209  -0.623 0.534451    
Species3      -4798.0032  1393.0990  -3.444 0.000830 ***
Year              0.2930     0.4941   0.593 0.554484    
Species2:Year     0.4092     0.6549   0.625 0.533462    
Species3:Year     2.3802     0.6907   3.446 0.000824 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.21 on 103 degrees of freedom
Multiple R-squared:  0.3853,    Adjusted R-squared:  0.3555 
F-statistic: 12.91 on 5 and 103 DF,  p-value: 9.428e-10

2-й вопрос: Почему мой итоговый вывод дает мне только два взаимодействия? Почему он не предоставляет также Species1: Year?

3-й вопрос: Кто-нибудь знает, как сделать такой график в r? Пока я могу сделать это только в Excel, используя средние значения для каждой группы

Спасибо

1 Ответ

0 голосов
/ 26 февраля 2020

1) Если ваши наблюдения включают только целые годы, а не полные даты, то можно добавить год в качестве переменной. Пока вы не преобразуете его в фактор, он предполагает в год постоянное увеличение.

2) Фальшивое или горячее кодирование - Кодирование всегда проверяет разницу между группами и базовой группой. Это означает, что S2 проверяет S2-S1, а S3 проверяет S3-S1. То же самое относится и к условиям взаимодействия.

3) Есть несколько возможностей, но это будет более 1-2 строк кода. См. Например http://www.cookbook-r.com/Graphs/Bar_and_line_graphs_ (ggplot2) / # line-graphs-1

...