Standardisierung von Daten in R
Standardisierung von Daten in R
Hallo,
ich möchte gerne zwei Korrelationen aneinander anpassen mittels z-Transformation. Allerdings sollen die Werte weiterhin im Bereich -1 bis +1 bleiben.
Gibt es hier Tipps wie ich dies am besten hinbekomme? Bisher hatte ich an unscale gedacht...
Vielen Dank im Voraus!
ich möchte gerne zwei Korrelationen aneinander anpassen mittels z-Transformation. Allerdings sollen die Werte weiterhin im Bereich -1 bis +1 bleiben.
Gibt es hier Tipps wie ich dies am besten hinbekomme? Bisher hatte ich an unscale gedacht...
Vielen Dank im Voraus!
Re: Standardisierung von Daten in R
Du willst also [-Inf, Inf] nach [-1, 1] abbilden? Zumindest verstehe ich den Rest nicht... (bitte ein Beispiel posten).Allerdings sollen die Werte weiterhin im Bereich -1 bis +1 bleiben.
Hier ein Beispiel:
Code: Alles auswählen
set.seed(1234)
x <- rnorm(100, mean = 0, sd = 10)
hist(x)
xs <- scales::rescale(x, c(-1, 1))
hist(xs)
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
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Re: Standardisierung von Daten in R
Also ich möchte meinen Datensatz (Korrelationen) skalieren. Diese skalierten Korrelation dürfen nur imm Bereich zwischen -1 und 1 liegen.
Ich probiere es nochmal mit den Grenzen!
Ich probiere es nochmal mit den Grenzen!
Re: Standardisierung von Daten in R
Ich verstehe nicht, was mit Skalieren von Korrelationen gemeint ist und ich kenne auch keine Korrelationsmaße, die nicht von selbst zwischen -1 und 1 liegen.
LG,Bernhard
LG,Bernhard
---
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: Standardisierung von Daten in R
Hallo zahni,
denkst Du an eine Korrelationsmatrix? Hier ist eine von meinem Lieblingsdatensatz "Rotwein":
Wenn Du von
denkst Du an eine Korrelationsmatrix? Hier ist eine von meinem Lieblingsdatensatz "Rotwein":
Code: Alles auswählen
> round(cor(Rotwein), digits = 3)
fixed.acidity volatile.acidity citric.acid residual.sugar chlorides free.sulfur.dioxide total.sulfur.dioxide density pH sulphates alcohol quality
fixed.acidity 1.000 -0.256 0.672 0.115 0.094 -0.154 -0.113 0.668 -0.683 0.183 -0.062 0.124
volatile.acidity -0.256 1.000 -0.552 0.002 0.061 -0.011 0.076 0.022 0.235 -0.261 -0.202 -0.391 <<
citric.acid 0.672 -0.552 1.000 0.144 0.204 -0.061 0.036 0.365 -0.542 0.313 0.110 0.226 <
residual.sugar 0.115 0.002 0.144 1.000 0.056 0.187 0.203 0.355 -0.086 0.006 0.042 0.014
chlorides 0.094 0.061 0.204 0.056 1.000 0.006 0.047 0.201 -0.265 0.371 -0.221 -0.129
free.sulfur.dioxide -0.154 -0.011 -0.061 0.187 0.006 1.000 0.668 -0.022 0.070 0.052 -0.069 -0.051
total.sulfur.dioxide -0.113 0.076 0.036 0.203 0.047 0.668 1.000 0.071 -0.066 0.043 -0.206 -0.185
density 0.668 0.022 0.365 0.355 0.201 -0.022 0.071 1.000 -0.342 0.149 -0.496 -0.175
pH -0.683 0.235 -0.542 -0.086 -0.265 0.070 -0.066 -0.342 1.000 -0.197 0.206 -0.058
sulphates 0.183 -0.261 0.313 0.006 0.371 0.052 0.043 0.149 -0.197 1.000 0.094 0.251 <
alcohol -0.062 -0.202 0.110 0.042 -0.221 -0.069 -0.206 -0.496 0.206 0.094 1.000 0.476 <<
quality 0.124 -0.391 0.226 0.014 -0.129 -0.051 -0.185 -0.175 -0.058 0.251 0.476 1.000
sprichst, meinst Du das?ich möchte gerne zwei Korrelationen aneinander anpassen mittels z-Transformation
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)
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)
Re: Standardisierung von Daten in R
Code: Alles auswählen
a <- t(c(0.25,0.5,0.75,..))
b <- t(c(-0.45, -0.3, -0.65,..)) #Korrelation 1
c <- t(c(-0.39, -0.49, -0.36,..)) #Korrelation 2
Vielleicht ist es jetzt verständlicher
Zuletzt geändert von jogo am Fr Apr 17, 2020 7:16 pm, insgesamt 1-mal geändert.
Grund: Formatierung verbessert, siehe http://forum.r-statistik.de/viewtopic.php?f=20&t=29
Grund: Formatierung verbessert, siehe http://forum.r-statistik.de/viewtopic.php?f=20&t=29
Re: Standardisierung von Daten in R
Hallo zahni,
ich verstehe das nicht.
Liefere uns doch den Datensatz und zeige uns, was Du da treibst.
(oder einen anderen Datensatz, der aber genau dieses Phänomen zeigt.)
Wo kommen da Werte außerhalb von -1 und 1 raus?
Gruß, Jörg
p.s.:
Also wenn weder Edi noch Bernhard noch ich das verstehen, dann wird es echt eng für Dich.
Diese drei schreiben hier 40% aller Beiträge - darunter sind ganz selten eigene Fragen, meistens sind es die Lösungen oder die notwendige Kommunikation, um die Lösung zu finden.
ich verstehe das nicht.
Liefere uns doch den Datensatz und zeige uns, was Du da treibst.
(oder einen anderen Datensatz, der aber genau dieses Phänomen zeigt.)
Wo kommen da Werte außerhalb von -1 und 1 raus?
Gruß, Jörg
p.s.:
Also wenn weder Edi noch Bernhard noch ich das verstehen, dann wird es echt eng für Dich.
Diese drei schreiben hier 40% aller Beiträge - darunter sind ganz selten eigene Fragen, meistens sind es die Lösungen oder die notwendige Kommunikation, um die Lösung zu finden.
zahni1997 hat geschrieben: ↑Fr Apr 17, 2020 7:07 pmAls kleines Beispiel. Das sind meine Korrelation (b und c). Beide beziehen sich auf einen Bezugswert a. Jetzt könnte ich ein Liniendiagramm mit x-Achse die Werte von a und auf der y-Achse die jeweiligen Korrelationen von b und c eintragen. Eine dritte Linie soll ein direkter Vergleich der beiden Korrelationen sein. Daher muss ich diese vorher mit scale() skalieren, so dass b und c die gleichen Werte haben. Bei meinem Datensatz kommen dann allerdings auch Werte außerhalb von -1 und 1 raus. Kann ich dies irgendwie anders beeinflussen?Code: Alles auswählen
a <- t(c(0.25,0.5,0.75,..)) b <- t(c(-0.45, -0.3, -0.65,..)) #Korrelation 1 c <- t(c(-0.39, -0.49, -0.36,..)) #Korrelation 2
Vielleicht ist es jetzt verständlicher
Re: Standardisierung von Daten in R
Also ein z-Wert ist im Bereich [-Inf, Inf], die "Einheit" zu Interpretation wäre "x Standardabweichungen entfernt vom Mittelwert". Hat also nur noch wenig mit Korrelation zu tun nach der Transformation. Deswegen verstehe ich nicht warum du Werte zwischen [-1,1] erwartest
Ein Möglichkeit nach [-1;1] zu transformieren habe ich oben gezeigt, was ist damit?
Ein Möglichkeit nach [-1;1] zu transformieren habe ich oben gezeigt, was ist damit?
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
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Re: Standardisierung von Daten in R
Das grenzt an Dada. Ich glaube, wir haben ein echtes XY-Problem im Sinne von https://de.wikipedia.org/wiki/XY_Problem
Bitte frag uns nicht, wie Du mit scale etwas so normierst, dass es nachher zwischen -1 und 1 liegt sondern erkläre uns, was das für Korrelationen sind und wozu dieser Vergleich zweier Korrelationen dienen soll. Im Zweifel bekommst Du dann über die R-Beratung hinaus auch noch Statistikberatung.
LG,
Bernhard
---
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: Standardisierung von Daten in R
@EDi : Ja es kann sein, dass dies schon die Lösung war. Habe es schon so an meine AG geschickt.
Unser Projektleiter findet es schöner wenn die Werte zwischen -1 und 1 liegen.
Sobald ich dazu heute komme werde ich ein Beispiel liefern!
Unser Projektleiter findet es schöner wenn die Werte zwischen -1 und 1 liegen.
Sobald ich dazu heute komme werde ich ein Beispiel liefern!