Hilfe zur Auswertung

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

Moderatoren: EDi, jogo

toro

Hilfe zur Auswertung

Beitrag von toro »

Hi,

ich hoffe ihr könnt mir auf die Sprünge helfen :)
Ich habe im Rahmen einer Arbeit Kurven erhalten und muss diese mit R auswerten. Ich brauche bestimmte Bereiche der Kurve, von denen ich die Mittelwerte bilden muss, und diese mittele ich wiederum untereinander nochmals. Bisher war es so gedacht, dass mir R mehrere Kurven aufeinmal einliest und auswertet, d.h. dazu existiert schon ein geeschriebener Code. Aufgrund von anderweitigen Änderungen muss nun jede Kurve einzeln eingelesen und auswertet werden und ich weiß nicht, wie ich den bestehenden Code umschreiben kann/muss.

Bisher haben wir es so gelöst, dass wir mit diesen senkrechten Linien (s. anhang) die betreffenden Kurvenbereiche eingerenzt haben und von diesen benötigten Bereichen die Mittelwerte gebildet haben usw.. wie gesagt für mehrere Kurven aufeinmal und nicht für eine einzelne Kurve.
Ich habe den bereits bestehenden Code mal als .txt Datei angehängt, sowie eine Beispielmessung und ein Beispielbild einer Kurve mit den eingegrenzten Bereichen.
Gleich vorweg: Ich habe R vorher nie benutzt und kenne mich auch nur soweit in etwa aus, was im bisherigen Code steht :roll:
Ich glaube, es ist keine große Sache das zu ändern, aber ich komme leider wirklich nicht drauf und hoffe auf eure Hilfe :)
Dateianhänge
Code - Kopie.txt
(2.37 KiB) 28-mal heruntergeladen
Beispielkurve.PNG
toro

Re: Hilfe zur Auswertung

Beitrag von toro »

Die Beispielmessung musste ich leider extra machen
Dateianhänge
Messung1.txt
(20.25 KiB) 25-mal heruntergeladen
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Hilfe zur Auswertung

Beitrag von EDi »

Was hast du denn schon probiert?
Wo scheitert es?
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.
toro

Re: Hilfe zur Auswertung

Beitrag von toro »

Naja einfach gesagt dachte ich es reicht wenn ich alles auskommentiere, was die restlichen Kurven betrifft, weil ich ja jetzt nur 1 Kurve habe. Aber das funktioniert nicht. Ich glaube man muss den data frame irgendwie abändern, wenn du mal in den angehängten Code guckst, da hab ich dahinter kommentiert.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Hilfe zur Auswertung

Beitrag von EDi »

Ich glaube man muss den data frame irgendwie abändern, wenn du mal in den angehängten Code guckst, da hab ich dahinter kommentiert.
Ich würde nicht den data.frame ändern, sondern den code danach.

Die '4' ist Hard-codiert, entweder durch 1 ersetzen (Dann braucht eigentlich es auch keine Schleife mehr) oder (genereller) parametrisieren mit ncol().
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.
toro

Re: Hilfe zur Auswertung

Beitrag von toro »

Kannst du es für Laien erklären? vllt war das nicht deutlich genug aber ich bin da totaler Anfänger:( ich habe R vorher nie benutzt und muss es danach auch nie wieder benutzen.. trotzdem würde ich es gerne lernen und zumindest ansatzweise kapieren, nicht falsch verstehen :)
Ich habe die 4 schonmal durch eine 1 ersetzt.hat nicht geklappt.. bzw. ich muss doch dann auch beim data frame eine der 4-en bei col und row durch eine 1 ersetzen oder?
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Hilfe zur Auswertung

Beitrag von EDi »

Hier ein Beispiel:

Code: Alles auswählen

# Beispieldaten
d = data.frame(rnorm(1:10000))

erg_mean_1 = matrix(0,nrow = 4, ncol = 1)

for (i in 1:1) {
  erg_mean_1[1,i]=mean(d[2250:2900,i]) 
  erg_mean_1[2,i]=mean(d[4100:4750,i])
  erg_mean_1[3,i]=mean(d[6000:6500,i])
  erg_mean_1[4,i]=mean(d[8000:8400,i])
  
}
die 4 rows sind da für die 4 Mittelwerte.
die 4 cols waren für die 4 Dateien.
Die Schleife kann man sich nun sparen und i durch 1 ersetzen..
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.
toro

Re: Hilfe zur Auswertung

Beitrag von toro »

meinst du so? (s. Anhang)

Wenn ich das allerdings plotten lasse, liegt der Wert etwa bei 0,15 (mit dem Auge abgelesen), wenn ich die beiden Mittelwerte der Konsole entnehme, und per Taschenrechner mittle, komme ich auf 0,19. Wie kann das sein?
so.txt
(780 Bytes) 25-mal heruntergeladen
Dateianhänge
Rplot01.png
Rplot01.png (1.93 KiB) 454 mal betrachtet
toro

Re: Hilfe zur Auswertung

Beitrag von toro »

Die Ausgabe der Console sieht so aus..
Ausgabe Console.txt
(911 Bytes) 23-mal heruntergeladen
jogo
Beiträge: 2085
Registriert: Fr Okt 07, 2016 8:25 am

Re: Hilfe zur Auswertung

Beitrag von jogo »

Hallo toro,

Du weißt aber schon, dass bei einem Standardboxplot die Linie in der Box nicht das arithmetische Mittel kennzeichnet, richtig?

Code: Alles auswählen

x <- c(1:5, rep(8, 6))
boxplot(x)
mean(x)
Gruß, Jörg
Antworten