Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
-
- Beiträge: 1
- Registriert: Do Mär 18, 2021 7:52 pm
Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Hallo zusammen
Ich arbeite an einem Projektseminar, indem wir eine Studie durchgeführt haben. Wie kann ich mehrere Werte (inform einer Spalte) zu einer neuen Variable zusammenfassen. Meine Daten bestehen aus einzelnen Fragen eines Tests, die ich gerne zum Gesamtwert des Tests zusammenführen würde. Aus der Verteilung des Gesamtwert muss ich ein Histogramm erstellen.
Ich habe es mit folgendem Begriff probiert:
transmute (d, kovra = kovra1 + kovra2)
und
mutate (d, kovra = kovra1 + kovra2)
--> Das Problem ist einerseits, dass es die neue Variable (Spalte) nicht speichert oder erkennt und andereseits ist es danach ein Vektor und ich brauche für ein Histogramm einen numerischen Wert.
herzlichen Dank im Voraus für eure Antworten und liebe Grüsse!
Gwenn
Ich arbeite an einem Projektseminar, indem wir eine Studie durchgeführt haben. Wie kann ich mehrere Werte (inform einer Spalte) zu einer neuen Variable zusammenfassen. Meine Daten bestehen aus einzelnen Fragen eines Tests, die ich gerne zum Gesamtwert des Tests zusammenführen würde. Aus der Verteilung des Gesamtwert muss ich ein Histogramm erstellen.
Ich habe es mit folgendem Begriff probiert:
transmute (d, kovra = kovra1 + kovra2)
und
mutate (d, kovra = kovra1 + kovra2)
--> Das Problem ist einerseits, dass es die neue Variable (Spalte) nicht speichert oder erkennt und andereseits ist es danach ein Vektor und ich brauche für ein Histogramm einen numerischen Wert.
herzlichen Dank im Voraus für eure Antworten und liebe Grüsse!
Gwenn
-
- Beiträge: 253
- Registriert: Di Jun 27, 2017 12:09 pm
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Gude!
Da ich keine Ahnung von den Daten habe, vermute ich mal, dass die Daten in Spalten vorliegen.
Dann geht das z.Bsp. so:
Dank&Gruß
Schubbiaschwilli
Da ich keine Ahnung von den Daten habe, vermute ich mal, dass die Daten in Spalten vorliegen.
Dann geht das z.Bsp. so:
Code: Alles auswählen
data <- data.frame(a=1:10, b=11:20)
data$Summe = data$a + data$b
Schubbiaschwilli
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
@schubbiaschwili: Ich weiß nicht, ob die jungen Leute von heute das so noch verstehen. Man könnte auch einfach schreiben
Ansonsten kann ich allen die Fragebögen auswerten das Paket psych ans Herz legen und da gibt es z. B. die Function scoreItems.
LG,
Bernhard
PS: die mutate- Variante zum Beispiel oben lautet
Code: Alles auswählen
library(tidyverse)
fb <- tibble(a = c(1, 1, 2, 4, 2, 3, 1, 1, 1, 2, 1),
b = c(1, 1, 2, 5, 1, 2, 3, 2, 1, 4, 2),
c = c(5, 5, 3, 2, 3, 1, 1, 2, 3, 1, 1),
d = c(5, 5, 1, 1, 1, 1, 2, 1, 2, 3, 1),
e = c(5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5))
fb$sum_ab <- fb$a %>% `+`(fb$b)
fb$sum_cde <- fb$c %>% `+`(fb$d) %>%`+`(fb$e)
fb
ggplot(fb) + geom_histogram( aes(x = sum_cde), binwidth = 3) + geom_rug(aes(x = jitter(sum_cde)))
Ansonsten kann ich allen die Fragebögen auswerten das Paket psych ans Herz legen und da gibt es z. B. die Function scoreItems.
LG,
Bernhard
PS: die mutate- Variante zum Beispiel oben lautet
Code: Alles auswählen
fb <- fb %>% mutate(summe = a + b + c + d + e)
# oder kürzer
fb %<>% mutate(summe2 = a + b + c + d + e)
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
-
- Beiträge: 253
- Registriert: Di Jun 27, 2017 12:09 pm
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Gude!
Was ist daran:
so viel besser und vor allem leserlich(er)? Ich sehe diese Schreibweise ja öfter, aber ich erkenne keine Vorteile.
Dank&Gruß
Schubbiaschwilli
Hey, ich erkenne ja Ironie, wenn ich sie sehe... Aber dazu mal die Frage: Aktuell mach' ich wieder viel mit Formeln, Monte-Carlo-Simulationen und sowas.
Was ist daran:
Code: Alles auswählen
fb$sum_cde <- fb$c %>% `+`(fb$d) %>%`+`(fb$e)
Dank&Gruß
Schubbiaschwilli
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Ich glaube, das wird man niemandem, der keine Allergie gegen geschachtelte Funktionen hat und - wenn's zu doll wird - ein paar Leerzeichen oder sogar Zeilenumbrüche zur besseren Orientierung einzufügen bereit ist, erklären können !Was ist daran ... so viel besser und vor allem leserlich(er)? Ich sehe diese Schreibweise ja öfter, aber ich erkenne keine Vorteile.
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Erstmal Danke für's Ironie erkennen.schubbiaschwilli hat geschrieben: ↑Fr Mär 19, 2021 11:51 amHey, ich erkenne ja Ironie, wenn ich sie sehe... Aber dazu mal die Frage: Aktuell mach' ich wieder viel mit Formeln, Monte-Carlo-Simulationen und sowas.
Was ist daran:so viel besser und vor allem leserlich(er)? Ich sehe diese Schreibweise ja öfter, aber ich erkenne keine Vorteile.Code: Alles auswählen
fb$sum_cde <- fb$c %>% `+`(fb$d) %>%`+`(fb$e)
Zum zweiten habe ich aus der Erwähnung hier alles nur unnötig lang und kompliziert machenden mutate und transmutate entnommen, dass der OP in der Schule des Aufgeräumtversums ausgebildet wird. Dort sind Pipes besser. Das Bedarf ebensowenig einer Begründung wie die Ehelosigkeit katholischer Priester. Man kann nicht alles herleiten, manches muss man einfach als Grundannahme setzen. Mein Eindruck vom Lesen einiger weniger Blogs zum Thema ist, dass die bessere Lesbarkeit hier als Grundannahme gesetzt und nicht argumentiert wird. Die Welt der Computerprogammierung wird beherrscht von den Sprachen JavaScript, Java, Python C++, C - lauter Programmierer die alle nicht wissen, wie übersichtlich ihr Code wäre, würden sie ihn von links nach rechts statt von innen nach außen parsen. Schließlich beginnt die Startseite auf www.tidyverse.org mit "The tidyverse is an opinionated collection of R packages..." und nicht mit "The tidyverse is an evidence based collection of R packages...". Also geh jetzt bitte ins Bad und wasch Dir für die Frage den Mund mit Seife aus!
Zum dritten hat Sprache nicht nur eine pragmatische, sondern auch eine ästhetische Dimension. Dein Statement ist statisch. a = b + c + d ist eine Feststellung, dass das eine die Summe der anderen ist. Bei der Pipe strömt information dynamisch vom einen Prozess zum anderen, mit den richtigen Zeilenumbrüchen kaskadenartig einem Wasserfall nicht ungleich seinem Ziele zu. Ein lebendiges Strömen und Fließen vom Ursprung zum Ziel gegenüber einer trocken-statischen Zuschreibung. Ästhetisch ganz klarer Fall.
Zum vierten ist R nunmal eine Multiparadigmensprache. Man kann in R mühelos imperativ programmieren. Man kann in R objektorientiert programmieren (mit einer größeren Auswahl an OO-Varianten als in den meisten anderen Mainstreamsprachen). Man kann in R sogar funktional programmieren (solange man keine tail-call-optimization braucht). Was in R so gar nicht vorgesehene ist ist Stack-orientiertheit. In Forth hat man seine Daten erstmal auf den Stack gelegt und dann eine Rechenoperation darauf angewandt. Ganz genauso kann man das mit der Pipe natürlich nicht nachmachen, aber ein wenig ist es doch schon so, als könnte man ein Argument auf den Stack legen und dann im nächsten Schritt darauf zugreifen und das Ergebnis gleich im Stack haben. Ok, das macht R nicht zu einer stackorientierten Sprache, aber die sind auch selten.
Nun, ich höre hier mal auf, weil Du spätestens jetzt überzeugt bist.
Bernhard %>% LG
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Geschachtelte Funktionen und geschachtelte Sätze
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
-
- Beiträge: 253
- Registriert: Di Jun 27, 2017 12:09 pm
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Gude!
Dank&Gruß
Schubbiaschwilli
Ah, ok.
Wie bekomme ich so ein lebendiges Strömen und Fließen vom Ursprung zum Ziel hin? Gibt's da was auf Rezept, oder muss ich zu dem Typen in der B-Ebene im HBF? Frage für einen Freund...Bei der Pipe strömt information dynamisch vom einen Prozess zum anderen, mit den richtigen Zeilenumbrüchen kaskadenartig einem Wasserfall nicht ungleich seinem Ziele zu. Ein lebendiges Strömen und Fließen vom Ursprung zum Ziel (...)
Nö - Ich gedenke, meine Kehle heute Abend mit bestem Wein aus roter Traube zu benetzen. Oder Weißbier - Mal schauen.Also geh jetzt bitte ins Bad und wasch Dir für die Frage den Mund mit Seife aus!
Mein Lieblingszitat aus Goldfinger: "Was wissen Sie über Gold? Ich meine Goldbarren?" - "Ich erkenne sie, wenn ich sie sehe." - Kann man immer mal wieder anwenden.Danke für's Ironie erkennen.
Dank&Gruß
Schubbiaschwilli
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Assmannshäuse Höllebesch ?Nö - Ich gedenke, meine Kehle heute Abend mit bestem Wein aus roter Traube zu benetzen.
-
- Beiträge: 253
- Registriert: Di Jun 27, 2017 12:09 pm
Re: Werte von mehreren Variablen aufsummieren und zu einer neuen Variable zusammenfassen
Gude!
Assmannshäuser Höllenberg - Spätburgunder - Also den kenne ich jetzt nicht, aber ich setze ihn mal auf die Liste. Und da du ja auch schon mal Riesling erwähnt hast: Du bist dem Rheingau zugetan?
Ich hab' mich übrigens für Weißbier entschieden; morgen gibt's Bagels mit Räucherlachs, und am Sonntag 'Stich in die Braut' und 'Blutdurst' (Rippchen mit Kraut und Blutwurst; für alle, die Satan&Deibel nicht kennen), und dazu gibt's gerne mal 'nen knackigen Riesling - Ja, auch zum Rippchen.
Dank&Gruß
Schubbiaschwilli
Assmannshäuser Höllenberg - Spätburgunder - Also den kenne ich jetzt nicht, aber ich setze ihn mal auf die Liste. Und da du ja auch schon mal Riesling erwähnt hast: Du bist dem Rheingau zugetan?
Ich hab' mich übrigens für Weißbier entschieden; morgen gibt's Bagels mit Räucherlachs, und am Sonntag 'Stich in die Braut' und 'Blutdurst' (Rippchen mit Kraut und Blutwurst; für alle, die Satan&Deibel nicht kennen), und dazu gibt's gerne mal 'nen knackigen Riesling - Ja, auch zum Rippchen.
Dank&Gruß
Schubbiaschwilli