Master Thesis:
  • About
  • Functions

Mood

Author

Hubert Bächli

source(here("Functions","PersonalAttributes.R"))
source(here("Functions","Mood.R"))
set.seed(1)
MFlex <- rep(0,100000)
Inbal <- rep(-5,100000)
Mood <- mood_state(MFlex,Inbal)

hist(Mood)

library(psych)

Attache Paket: 'psych'
Die folgenden Objekte sind maskiert von 'package:ggplot2':

    %+%, alpha
des <- describe(Mood)


mood_mean(MFlex[1],Inbal[1])
[1] -0.625
des$mean
[1] -0.6242041
mood_sd(MFlex[1],Inbal[1])
[1] 0.2602082
des$sd
[1] 0.2615992
mood_median(MFlex[1],Inbal[1])
[1] -0.6818182
des$median
[1] -0.6770565
mood_skew(MFlex[1],Inbal[1])
[1] 0.9607689
des$skew
[1] 0.9737202
inbalance <- seq(-20,20)
x <- length(inbalance)
ID <- 1:11
id <- length(ID)
n <- 20

Data01 <- data.frame( ID = rep(ID, each=x*n),
                         MFlex = rep(0:10 / 10, each=x*n),
                         Inbal = rep(inbalance, n*id)
                         )

Data01$State <- mood_state(Data01$MFlex,Data01$Inbal)
Data01$Mean <- mood_mean(Data01$MFlex,Data01$Inbal)
Data01$SD <- mood_sd(Data01$MFlex,Data01$Inbal)
Data01$Median <- mood_median(Data01$MFlex,Data01$Inbal)
head(Data01,10)
   ID MFlex Inbal      State       Mean        SD     Median
1   1     0   -20 -0.6360527 -0.8695652 0.1008002 -0.8955224
2   1     0   -19 -0.8808631 -0.8636364 0.1051153 -0.8906250
3   1     0   -18 -0.9137186 -0.8571429 0.1098152 -0.8852459
4   1     0   -17 -0.9374633 -0.8500000 0.1149534 -0.8793103
5   1     0   -16 -0.9198898 -0.8421053 0.1205941 -0.8727273
6   1     0   -15 -0.8137655 -0.8333333 0.1268143 -0.8653846
7   1     0   -14 -0.9321904 -0.8235294 0.1337077 -0.8571429
8   1     0   -13 -0.8968038 -0.8125000 0.1413889 -0.8478261
9   1     0   -12 -0.6679928 -0.8000000 0.1500000 -0.8372093
10  1     0   -11 -0.9477397 -0.7857143 0.1597191 -0.8250000
ggplot(Data01, aes(x = Inbal, color = as.factor(MFlex))) +
  geom_jitter(width = 1,aes(y = State), alpha = 0.2) +
  geom_line(aes(y = Mean, group = MFlex), size = 1.2) +
  labs(x = "Inbalance", y = "Mood State", color = "Mental Flexible") +
  theme_minimal()
Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
ℹ Please use `linewidth` instead.

inbalance <- seq(-24,24)
x <- length(inbalance)
ID <- 1:9
id <- length(ID)
MF <- c(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9)
n <- 10

Data02 <- data.frame( ID = rep(ID, each=x*n),
                         MFlex = rep(MF, each=x*n),
                         Inbal = rep(inbalance, n*id)
                         )

Data02$State <- mood_state(Data02$MFlex,Data02$Inbal)
Data02$Mean <- mood_mean(Data02$MFlex,Data02$Inbal)
Data02$SD <- mood_sd(Data02$MFlex,Data02$Inbal)
Data02$Median <- mood_median(Data02$MFlex,Data02$Inbal)
head(Data02,10)
   ID MFlex Inbal      State       Mean         SD     Median
1   1   0.1   -24 -0.8665056 -0.8698225 0.09226716 -0.8913593
2   1   0.1   -23 -0.7337936 -0.8649271 0.09554869 -0.8871687
3   1   0.1   -22 -0.6624410 -0.8596491 0.09907154 -0.8826419
4   1   0.1   -21 -0.8234746 -0.8539419 0.10286323 -0.8777367
5   1   0.1   -20 -0.9441234 -0.8477509 0.10695563 -0.8724036
6   1   0.1   -19 -0.8868894 -0.8410117 0.11138582 -0.8665839
7   1   0.1   -18 -0.9839462 -0.8336484 0.11619723 -0.8602081
8   1   0.1   -17 -0.9208946 -0.8255699 0.12144096 -0.8531922
9   1   0.1   -16 -0.6715809 -0.8166667 0.12717765 -0.8454349
10  1   0.1   -15 -0.9429515 -0.8068057 0.13347972 -0.8368121
ggplot(Data02, aes(x = Inbal)) +
  geom_jitter(width = 1,aes(y = State), 
              alpha = 0.2, color = "black") +
  geom_line(aes(y = Mean, group = MFlex), 
            color = "red", size = 0.8) +
  geom_line(aes(y = Median, group = MFlex), 
            color = "blue", size = 0.8) +
  labs(x = "Inbalance", y = "Mood State", color = "Mental Flexible") +
  theme_minimal() +
  facet_wrap(~ MFlex, ncol = 3)

Data02plt <- Data02[Data02$MFlex==0.5,]

ggplot(Data02plt, aes(x = Inbal)) +
  geom_jitter(width = 1,aes(y = State), 
              alpha = 0.2, color = "black") +
  geom_line(aes(y = Mean, group = MFlex), 
            color = "red", size = 1.2) +
  geom_line(aes(y = Median, group = MFlex), 
            color = "blue", size = 1.2) +
  labs(x = "Inbalance", y = "Mood State", color = "Mental Flexible") +
  theme_minimal() +
  facet_wrap(~ MFlex, ncol = 3)

ID <- 1:9
id <- length(ID)
MF <- seq(0.1,0.9,0.1)
Day <- 90
n <- 3

Data03 <- data.frame( ID = rep(ID, each=n*Day),
                         Time = rep(1:(n*Day),id),
                         Day = rep(1:Day,id*n),
                         MFlex = rep(MF, each=n*Day)
                         )

Data03$Inbal <- mood_inbalance(Data03$MFlex,0.4)
Data03$State <- mood_state(Data03$MFlex,Data03$Inbal)
Data03$Mean <- mood_mean(Data03$MFlex,Data03$Inbal)
Data03$SD <- mood_sd(Data03$MFlex,Data03$Inbal)
Data03$Median <- mood_median(Data03$MFlex,Data03$Inbal)


Data03$Day_positiv <- ave(Data03$State, 
                          Data03$ID, Data03$Day, 
                          FUN = P_AS_mean)
Data03$Day_negativ <- ave(Data03$State, 
                          Data03$ID, Data03$Day, 
                          FUN = N_AS_mean)

head(Data03,10)
   ID Time Day MFlex    Inbal       State Mean        SD    Median Day_positiv
1   1    1   1   0.1 2.394558  0.39060149  0.4 0.3467473 0.4501279    1.520802
2   1    2   2   0.1 2.394558  0.34070728  0.4 0.3467473 0.4501279    3.059171
3   1    3   3   0.1 2.394558  0.37330459  0.4 0.3467473 0.4501279    2.696163
4   1    4   4   0.1 2.394558  0.60525093  0.4 0.3467473 0.4501279    3.039803
5   1    5   5   0.1 2.394558  0.44332325  0.4 0.3467473 0.4501279    3.224645
6   1    6   6   0.1 2.394558 -0.01289499  0.4 0.3467473 0.4501279    2.940238
7   1    7   7   0.1 2.394558  0.81580677  0.4 0.3467473 0.4501279    3.631049
8   1    8   8   0.1 2.394558  0.39714127  0.4 0.3467473 0.4501279    3.161873
9   1    9   9   0.1 2.394558  0.60788559  0.4 0.3467473 0.4501279    2.817025
10  1   10  10   0.1 2.394558  0.16162476  0.4 0.3467473 0.4501279    1.923698
   Day_negativ
1     1.497023
2     1.000000
3     1.000000
4     1.000000
5     1.000000
6     1.017193
7     1.000000
8     1.000000
9     1.389221
10    1.000000
ggplot(Data03, aes(x = Time, group = MFlex)) +
  geom_line(size = 0.8, aes(y = State), color = "grey") +
  geom_line(size = 1, aes(y = Mean), color = "red") +
  labs(x = "Time", y = "Mood State") +
  ylim(-1,1) +
  theme_minimal() +
  facet_wrap(~ MFlex, ncol = 3)

ggplot(Data03, aes(x = Day, group = MFlex)) +
  geom_line(size = 0.8, aes(y = Day_positiv), color = "blue") +
  geom_line(size = 0.8, aes(y = Day_negativ), color = "red") +
  labs(x = "Day", y = "PANAS") +
  ylim(1,5) +
  theme_minimal() +
  facet_wrap(~ MFlex, ncol = 3)

Back to top
Source Code
---
title: "Mood"
author: "Hubert Bächli"
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
library(here)
library(tidyverse)

```

```{r}
source(here("Functions","PersonalAttributes.R"))
source(here("Functions","Mood.R"))
set.seed(1)
```

```{r}
MFlex <- rep(0,100000)
Inbal <- rep(-5,100000)
Mood <- mood_state(MFlex,Inbal)

hist(Mood)

library(psych)
des <- describe(Mood)


mood_mean(MFlex[1],Inbal[1])
des$mean
mood_sd(MFlex[1],Inbal[1])
des$sd
mood_median(MFlex[1],Inbal[1])
des$median
mood_skew(MFlex[1],Inbal[1])
des$skew

```

```{r}
inbalance <- seq(-20,20)
x <- length(inbalance)
ID <- 1:11
id <- length(ID)
n <- 20

Data01 <- data.frame( ID = rep(ID, each=x*n),
                         MFlex = rep(0:10 / 10, each=x*n),
                         Inbal = rep(inbalance, n*id)
                         )

Data01$State <- mood_state(Data01$MFlex,Data01$Inbal)
Data01$Mean <- mood_mean(Data01$MFlex,Data01$Inbal)
Data01$SD <- mood_sd(Data01$MFlex,Data01$Inbal)
Data01$Median <- mood_median(Data01$MFlex,Data01$Inbal)
head(Data01,10)

```

```{r}
ggplot(Data01, aes(x = Inbal, color = as.factor(MFlex))) +
  geom_jitter(width = 1,aes(y = State), alpha = 0.2) +
  geom_line(aes(y = Mean, group = MFlex), size = 1.2) +
  labs(x = "Inbalance", y = "Mood State", color = "Mental Flexible") +
  theme_minimal()
```

```{r}
inbalance <- seq(-24,24)
x <- length(inbalance)
ID <- 1:9
id <- length(ID)
MF <- c(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9)
n <- 10

Data02 <- data.frame( ID = rep(ID, each=x*n),
                         MFlex = rep(MF, each=x*n),
                         Inbal = rep(inbalance, n*id)
                         )

Data02$State <- mood_state(Data02$MFlex,Data02$Inbal)
Data02$Mean <- mood_mean(Data02$MFlex,Data02$Inbal)
Data02$SD <- mood_sd(Data02$MFlex,Data02$Inbal)
Data02$Median <- mood_median(Data02$MFlex,Data02$Inbal)
head(Data02,10)


```

```{r}
ggplot(Data02, aes(x = Inbal)) +
  geom_jitter(width = 1,aes(y = State), 
              alpha = 0.2, color = "black") +
  geom_line(aes(y = Mean, group = MFlex), 
            color = "red", size = 0.8) +
  geom_line(aes(y = Median, group = MFlex), 
            color = "blue", size = 0.8) +
  labs(x = "Inbalance", y = "Mood State", color = "Mental Flexible") +
  theme_minimal() +
  facet_wrap(~ MFlex, ncol = 3)
```

```{r}
Data02plt <- Data02[Data02$MFlex==0.5,]

ggplot(Data02plt, aes(x = Inbal)) +
  geom_jitter(width = 1,aes(y = State), 
              alpha = 0.2, color = "black") +
  geom_line(aes(y = Mean, group = MFlex), 
            color = "red", size = 1.2) +
  geom_line(aes(y = Median, group = MFlex), 
            color = "blue", size = 1.2) +
  labs(x = "Inbalance", y = "Mood State", color = "Mental Flexible") +
  theme_minimal() +
  facet_wrap(~ MFlex, ncol = 3)
```

```{r}
ID <- 1:9
id <- length(ID)
MF <- seq(0.1,0.9,0.1)
Day <- 90
n <- 3

Data03 <- data.frame( ID = rep(ID, each=n*Day),
                         Time = rep(1:(n*Day),id),
                         Day = rep(1:Day,id*n),
                         MFlex = rep(MF, each=n*Day)
                         )

Data03$Inbal <- mood_inbalance(Data03$MFlex,0.4)
Data03$State <- mood_state(Data03$MFlex,Data03$Inbal)
Data03$Mean <- mood_mean(Data03$MFlex,Data03$Inbal)
Data03$SD <- mood_sd(Data03$MFlex,Data03$Inbal)
Data03$Median <- mood_median(Data03$MFlex,Data03$Inbal)


Data03$Day_positiv <- ave(Data03$State, 
                          Data03$ID, Data03$Day, 
                          FUN = P_AS_mean)
Data03$Day_negativ <- ave(Data03$State, 
                          Data03$ID, Data03$Day, 
                          FUN = N_AS_mean)

head(Data03,10)

```

```{r}
ggplot(Data03, aes(x = Time, group = MFlex)) +
  geom_line(size = 0.8, aes(y = State), color = "grey") +
  geom_line(size = 1, aes(y = Mean), color = "red") +
  labs(x = "Time", y = "Mood State") +
  ylim(-1,1) +
  theme_minimal() +
  facet_wrap(~ MFlex, ncol = 3)
```

```{r}
ggplot(Data03, aes(x = Day, group = MFlex)) +
  geom_line(size = 0.8, aes(y = Day_positiv), color = "blue") +
  geom_line(size = 0.8, aes(y = Day_negativ), color = "red") +
  labs(x = "Day", y = "PANAS") +
  ylim(1,5) +
  theme_minimal() +
  facet_wrap(~ MFlex, ncol = 3)
```