Ausreißer im Boxplot markieren

Wie rufe ich R-Funktionen auf, wie selektiere ich Daten, ich weiß nicht genau ....

Moderatoren: EDi, jogo

Antworten
SophiaSchi
Beiträge: 7
Registriert: Mi Jun 02, 2021 4:25 pm

Ausreißer im Boxplot markieren

Beitrag von SophiaSchi »

Hallo,

ich habe einen Datensatz im long-Format vorliegen mit Variablen zur Codierung der ID, der Bedingung (1-4) und dem Wert in einem Fragebogen. Zum Vergleich der Unterschiede in den vier Bedingungen habe ich 4 Boxplots erstellt:
Boxplot.png
Boxplot.png (4.84 KiB) 747 mal betrachtet
Nun habe ich die Aufgabe, Ausreißer zu identifizieren und in den Abbildungen die jeweiligen IDs darzustellen. Ich habe bereits über boxplot.stats(data$Variable)$out versucht, die Ausreißer zu identifizieren und über mtext der Grafik hinzuzufügen. Im Ergebnis von boxplot.stats()$out werden mir jedoch keine Ausreißer angezeigt (numeric(0)). Ich vermute, dass es daran liegen könnte, dass ich hier nicht nach den Bedingungen gruppiert habe (?). Ist das möglich?

Über is.outlier() werden mir Outlier angezeigt, ich finde hier aber keine geeignete Möglichkeit, die zugehörigen IDs im Boxplot darzustellen. Da es sich um recht viele Outlier handelt, kann man bei geom_text() leider nicht mehr allzu viel erkennen.

Gibt es hier noch andere Möglichkeiten?

Vielen lieben Dank im Voraus und viele Grüße
Sophia
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Ausreißer im Boxplot markieren

Beitrag von EDi »

Bitte ein reproduzierbares Beispiel posten.
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
SophiaSchi
Beiträge: 7
Registriert: Mi Jun 02, 2021 4:25 pm

Re: Ausreißer im Boxplot markieren

Beitrag von SophiaSchi »

Hier habe ich meinen bisherigen Code für die ersten 5 Versuchspersonen meines Datensatzes:

Code: Alles auswählen

data <- read.csv('data')

res.aov_1 <- get_anova_table(anova_test(
  data = data, dv = Variable, wid = id, within = Bedingung))
pwc_1 <- data %>%
  pairwise_t_test(Variable ~ Bedingung, paired = TRUE,p.adjust.method = "bonferroni")%>% 
  add_xy_position(x = "Bedingung")

bxp_1 <- ggboxplot(data, x = "Bedingung", y = "Variable", add = "point", color = "Bedingung", palette = "npg") + 
  stat_pvalue_manual(pwc_1)+
  labs(subtitle = get_test_label(res.aov_1, detailed = TRUE), caption = get_pwc_label(pwc_1)) +
  stat_summary (fun=mean, geom="crossbar", color="orange")
bxp_1
Als Dateianhang habe ich den Datensatz hinzugefügt.

Genügt das zur Reproduktion oder fehlen noch weitere Infos?

Vielen Dank im Voraus! :)
Dateianhänge
data.csv
(504 Bytes) 74-mal heruntergeladen
SophiaSchi
Beiträge: 7
Registriert: Mi Jun 02, 2021 4:25 pm

Re: Ausreißer im Boxplot markieren

Beitrag von SophiaSchi »

Ansonsten würde es mir auch erst einmal reichen, in einer neuen Spalte im Datensatz mit 0 und 1 zu codieren, ob es sich um einen Ausreißer handelt oder nicht. Leider weiß ich nicht, wie ich die Ergebnisse, die ich über identify_outlier() erhalte, "übertragen" kann
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Ausreißer im Boxplot markieren

Beitrag von bigben »

Hallo Sophia.
SophiaSchi hat geschrieben: Mo Jun 21, 2021 4:12 pmGenügt das zur Reproduktion oder fehlen noch weitere Infos?
Die bei Deiner Arbeit verwendeten packages könnten helfen. Allgemein käme man so an die DAten:

Code: Alles auswählen

d <- read.csv("http://forum.r-statistik.de/download/file.php?id=1498")

bp <- boxplot(Variable ~ Bedingung, data = d)
text(bp$group+.1, bp$out + .1, labels = round(bp$out,2))
axis(4, bp$out)
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Antworten