Eingelesene Daten aus CSV sind nicht nummerisch

Allgemeine Statistik mit R, die Test-Methode ist noch nicht bekannt, ich habe noch keinen Plan!

Moderatoren: EDi, jogo

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

Re: Eingelesene Daten aus CSV sind nicht nummerisch

Beitrag von bigben »

Stanger hat geschrieben: Di Apr 23, 2019 5:32 pmdas erstellen von Histogrammen einzelner Spalten hat super funktioniert.


Cool.
Stanger hat geschrieben: Di Apr 23, 2019 5:32 pmJedoch ist mir noch nicht so wirklich klar wie ich die alle Spalten der Tabelle zusammenfassen soll.
Wie stellst Du Dir denn inhaltlich vor, dass die Spalten zusammengefasst werden sollen? Vielleicht mit unlist()?

Code: Alles auswählen

bsp <- data.frame(a=runif(50), b=rbeta(50,1,25))
print(unlist(bsp))
hist(unlist(bsp))
@Bernhard, weshalb verwendest du in deinem Beispiel rnorm und runif?
Wenn ich Dir vormache, wie irgendwelche Funktionen angewendet werden, brauche ich dazu Daten. Deine Daten habe ich nicht, also lasse ich zufällige Daten kreieren. So kannst Du meine Code-Beispiele einfach per Copy-paste in Dein R übertragen und Dir selbst anschauen, was passiert und das an Deine Daten anpassen.
Wir nennen das ein reproduzierbares Beispiel.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Stanger
Beiträge: 5
Registriert: Do Apr 04, 2019 12:01 pm

Re: Eingelesene Daten aus CSV sind nicht nummerisch

Beitrag von Stanger »

bigben hat geschrieben: Di Apr 23, 2019 7:14 pm Wie stellst Du Dir denn inhaltlich vor, dass die Spalten zusammengefasst werden sollen? Vielleicht mit unlist()?
Hallo Bernhard,

Ja genau, mein Ziel ist es alle Spalten der Tabelle in einem Histogramm darzustellen.

Wie bereits erwähnt funktioniert dies mit einzelnen Spalten super.
Nur beim zusammenfassen tritt ein Problem auf.

Code: Alles auswählen

b=unlist(a)

hist(b,main="Histogramm",
     xlab="x",
     ylab="y",
     col="deepskyblue",
     breaks=seq(-1,1,length=40),
     ylim=c(0, 500),
     xaxt='n' )

axis(1, at=seq(-1.5, 1.5, by=0.1), 
labels=c("-1,5", "-1,4", "-1,3", "-1,2", "-1,1", "-1", "-0.9", "-0.8", 
                                          "-0.7", "-0.6", "-0.5", "-0.4", "-0.3", 
                                          "-0.2", "-0.1", "0.0", "0.1", "0.2", 
                                          "0.3", "0.4", "0.5" ,"0.6", "0.7", 
                                          "0.8", "0.9", "1.0", "1,1", "1,2", "1,3" , "1,4", "1,5" )) 
                                          
                                          
Fehler in hist.default(b, main = "Histogramm", xlab = "x", ylab = "y",  : 
  einige 'x' nicht gezählt: evtl. überdecken die 'breaks' nicht den gesamten Bereich von 'x'
  



Dies verwundert mich etwas, da alle Zahlen zwischen -1,5 und 1,5 liegen.

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

Re: Eingelesene Daten aus CSV sind nicht nummerisch

Beitrag von bigben »

Stanger hat geschrieben: Mi Apr 24, 2019 11:58 amDies verwundert mich etwas, da alle Zahlen zwischen -1,5 und 1,5 liegen.
Und dennoch lässt Du nur Werte zwischen -1 und +1 eins zu in Deiner Definition der breaks:

Code: Alles auswählen

breaks=seq(-1,1,length=40),
Ich finde, die Fehlermeldung hat das erfreulich präzise erklärt. Denke bitte auch an die Spalte Ind.ID!

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Antworten