Ganz basale Fragen...

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

Moderatoren: EDi, jogo

Loremi
Beiträge: 7
Registriert: So Nov 13, 2022 7:01 pm

Ganz basale Fragen...

Beitrag von Loremi »

Liebe Community,

ich bin neu hier, fuchse mich gerade rein und bin auf eure Antwort und (wohl noch mehr) auf Nachsicht angewiesen bei meinen folgenden Fragen:

Ich habe es so verstanden, dass R im Grunde "nur" wie ein schlauer Taschenrechner mit Speicher funktioniert. Diesen Speicher muss ich füllen mit Daten, die wiederum die .csv Datei aus Tabellen sind.
Die Tabellen lege ich selbst an nach einem bestimmten Format, sonst können sie nicht in .csv Dateien umgewandelt werden, oder lasse sie mir von meinem Testprogramm automatisch ausgeben.

Mein Testprogramm spuckt mir so eine csv Datei aus - nur leider kann ich damit überhaupt nichts anfangen. So sieht die erste Zeile aus (bei mir in Numbers in Spalten und Zeilen ordentlich untereinander, er übertragt das Format hier leider nicht).


Ergebnis_ID Kind_ID Kind_Login Klassen_ID Geschlecht Geburtsdatum SPF Tags Test_ID Testdatum Testwoche item time group. answer result description

76315 27196 123456 6835 1 2011-07-01 0 71 2022-08-31 2022-08-29 I1 11633 2 strei­ten 1 streiten


Davon insgesamt 41014 Zeilen (und es werden nochmal soviel dazu kommen).

Ich habe zwar parallel händisch eine eigene Tabelle erstellt, die kann aber nicht nach .csv exportiert werden, vermutlich weil ich mehrere Kriterien verletzt habe (?). Es dämmerte mir, dass das händische anlegen aufwändig und fehleranfällig ist, der Datenexport doch also bestimmt schon Standard ist.

Was ich ja jetzt möchte, sind z.B. die Punktrohwerte der richtig beantworteten Items eines Kindes bei allen bisherigen (7) Tests.

Frage: Wie lese ich die dann jetzt raus???



Danke schonmal für wertvolle Tipps und Hinweise!!

Loremi
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Ganz basale Fragen...

Beitrag von bigben »

Hallo Loremi,

Zu Deinen Beispielzeilen der Datei könntest Du folgendes versuchen:

Code: Alles auswählen

daten <- read.table("dateiname", sep = " ")
summary(daten)
Wenn Dj nicht weißt, wie Du "dateiname" richtig ersetzt, hilft dabei die Funktion "chooses.files()".

Kannst Du das so umsetzen?

LG, Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Loremi
Beiträge: 7
Registriert: So Nov 13, 2022 7:01 pm

Re: Ganz basale Fragen...

Beitrag von Loremi »

Danke erstmal!


Die Datei habe ich erfolgreich gefunden, aber was muss ich bei sep = " " eintragen? Und wozu ist summary(daten)?


Verstehe ich das richtig, dass ich meine Tabellen im Grunde perfekt vorbereiten muss für R - alles in Spalten?


VG Loremi
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Ganz basale Fragen...

Beitrag von bigben »

Es klingt so, als hättest Du schon alles in Spalten und das sep=" " sagt R, dass die Spalten durch ein Leerzeichen getrennt sind. Das kannst Du also einfach so stehen lassen. Der summary Befehl gibt eine kurze Zusammenfassung über den Inhalt der Variablen und soll hier als Plausibilitätskontrolle dienen, ob alles gut gelaufen ist. Mit etwas Glück zeigt das an, dass alle 41.000 Zeilen gelesen wurden.

Was verstehst Du denn unter perfekt vorbereiten? In welcher Form würdest Du die Daten denn gerne anbieten, wenn nicht in Spalten? R ist wirklich flexibel, was das Eingabeformat ist. Es bleibt aber natürlich ein dummer Computer, der nur solche Aufträge abarbeiten kann, die Du ihm eindeutig erklären kannst.

LG, Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Loremi
Beiträge: 7
Registriert: So Nov 13, 2022 7:01 pm

Re: Ganz basale Fragen...

Beitrag von Loremi »

Das Folgende gibt R mir aus, sieht glaube ich gut aus?
V1
Length:41014
Class :character
Mode :character

Diese csv. Datei ist mir vom Programm ausgegeben worden, also meine exportierten Testdaten. Wie arbeite ich jetzt damit weiter? Ich möchte u.a. den Punktrohwert aller richtig bearbeiteten Items, das ist die Summe der Spalte "result"...dort steht entweder 0, 1 oder NA. Allerdings ist jedes Kind ca. 9 mal getestet worden bisher

Theoretisch müsste ich ja einfach nur die Spalte "result" addieren, wobei die Anzahl bestimmt besser ist...für jedes Kind für jede Woche. Dazu muss ich einen Dataframe definieren...oder? Jedes Kind (Spalte Kind_ID) hat also 9 verschiedene Ergebnis_IDs...., davon jeweils die "1" aus der Spalte "result". Oh Gott, wie packe ich das jetzt alles in eine Formel??

LG Loremi

P.S. MIt "perfekt" meine ich übrigens allein schon die Sortierung in Spalten, ich habe z.T. leider Zeilen benutzt.
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Ganz basale Fragen...

Beitrag von bigben »

Hallo Loremi,

eins nach dem anderen. Das mit dem Einlesen hat noch nicht geklappt. Zum einen wurden die Überschriften nicht als solche eingelesen, zum anderen ist das Trennzeichen nicht das Leerzeichen, sondern der Tabulator. Versuch nochmal folgendes:

Code: Alles auswählen

daten <- read.table("dateiname", sep = " \t", header = TRUE)
summary(daten)
str(daten)
P.S. MIt "perfekt" meine ich übrigens allein schon die Sortierung in Spalten, ich habe z.T. leider Zeilen benutzt.
Das Problem liegt hier im "zum Teil" - es lässt sich sehr viel einlesen, aber Einheitlichkeit muss man schon herstellen.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Benutzeravatar
student
Beiträge: 674
Registriert: Fr Okt 07, 2016 9:52 am

Re: Ganz basale Fragen...

Beitrag von student »

Hallo Loremi,

ich habe vor ein paar Jahren mal ein Video zur Einführung in R (https://youtu.be/Rr_7hJ28qFs) und, was die Arbeit mit R deutlich unterstützt, eine Einführung in RStudio (https://youtu.be/PmMf8J3SUZM) gemacht. Ich denke, beide Videos können Dir beim Einarbeiten in den gewaltigen Taschenrechner R weiterhelfen.
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube

Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Athomas
Beiträge: 768
Registriert: Mo Feb 26, 2018 8:19 pm

Re: Ganz basale Fragen...

Beitrag von Athomas »

Ich habe es so verstanden, dass R im Grunde "nur" wie ein schlauer Taschenrechner mit Speicher funktioniert.
Ist denn im Grunde nicht alles nur ein schlauer Taschenrechner mit Speicher?
Diesen Speicher muss ich füllen mit Daten, die wiederum die .csv Datei aus Tabellen sind.
Falls das irgendwann ein anderer Anfänger liest: dieses Statement ist der nicht zutreffende Eindruck eines Beginners - eines frühen Anfängers.
Ich kann jedem nur dringend empfehlen, sich erstmal die elementaren Grundlagen von R draufzuschaffen, bevor man es auf reale Probleme anwendet!

Das wird sonst nix!
Loremi
Beiträge: 7
Registriert: So Nov 13, 2022 7:01 pm

Re: Ganz basale Fragen...

Beitrag von Loremi »

Falls das hier ein anderer AnfängerIn liest: es ist in Ordnung, Fragen zu stellen, wenn man etwas nicht verstanden hat! Zumal bei einem so komplexen Thema und Programm. Die vielen YouTube Videos und schriftlichen Einführungen/FAQs sind gut, aber eben nicht exakt auf die eigene Situation zugeschnitten und da Lernen ja ein Produkt mehrdimensionalen Vorgehens ist, gehört Fragen stellen genauso dazu, wie YouTube Videos gucken (und noch vieles mehr).
Sonst wäre der Distanzunterricht an Schulen und Universitäten ja auch ein Knaller Erfolgsmodell geworden, nicht wahr.

Falls von Interesse: natürlich habe ich schon die ein oder andere Einführung in R bei YouTube geschaut, allerdings keine gefunden, bei der die Daten wie bei mir im Grunde nochmal in R bearbeitet/neu sortiert werden müssen: alle Beispiele, die ich gefunden hatte, haben ein recht einfache Tabelle eingelesen - das kann ich auch!

An Athomas: möglicherweise bist du schon zu sehr Experte, ein Perspektivwechsel kann da helfen - ich schlage vor, dich mal mit Cubase oder Praat auseinanderzusetzen; Programme, die nicht nur insich komplex sind, sondern auch viel Vorwissen erfordern. Alternativ geht auch das Kochen eines Mehrgänge-Menüs. Bei Fragen stehe ich gern zur Verfügung! So wird das dann auf jeden Fall was :)


An Student: Danke für den Tipp, schaue ich mir an!

An Bernhard: Probiere ich jetzt aus und melde mich. Danke!!
Zuletzt geändert von Loremi am Mo Nov 14, 2022 12:54 pm, insgesamt 1-mal geändert.
Loremi
Beiträge: 7
Registriert: So Nov 13, 2022 7:01 pm

Re: Ganz basale Fragen...

Beitrag von Loremi »

Bernhard, hab alles eingegeben
> daten <- read.table ("/Users/inch/Desktop/SEL6_2022_11_13.csv", sep = "\t", header = TRUE)
> summary(daten)
Ergebnis_ID.Kind_ID.Kind_Login.Klassen_ID.Geschlecht.Geburtsdatum.SPF.Tags.Test_ID.Testdatum.Testwoche.item.time.group.answer.result.description
Length:41013
Class :character
Mode :character
> str(daten)
'data.frame': 41013 obs. of 1 variable:
$ Ergebnis_ID.Kind_ID.Kind_Login.Klassen_ID.Geschlecht.Geburtsdatum.SPF.Tags.Test_ID.Testdatum.Testwoche.item.time.group.answer.result.description: chr "76315,27196,5OG6F0,6835,1,2011-07-01,0,,71,2022-08-31,2022-08-29,I1,11633,2,strei­ten,1,streiten" "76315,27196,5OG6F0,6835,1,2011-07-01,0,,71,2022-08-31,2022-08-29,I2,16281,1,ver­schwun­de­nen,1,verschwundenen" "76315,27196,5OG6F0,6835,1,2011-07-01,0,,71,2022-08-31,2022-08-29,I3,19810,3,Trick,1,Trick" "76315,27196,5OG6F0,6835,1,2011-07-01,0,,71,2022-08-31,2022-08-29,I4,13966,1,ge­fähr­li­che,1,gefährliche" ...
Der erste Befehl war das Einlesen der Spaltenüberschriften, der zweite hat die kompletten Datenzeilen dazusortiert?
Antworten