Ich habe einen Datensatz, der die vertikale Bodenreaktionskraft für zwei vertikale Sprünge von einem Athleten zur Verfügung gestellt enthält. Dies ist eine kontinuierliche Variable. Ich habe auch eine Spalte, die die Verschiebung des Athleten angibt, die auch eine kontinuierliche Variable ist. Die Daten werden bei 500 Hz für beide Sprünge abgetastet, aber Sprung Nr. 1 benötigt mehr Zeit als Sprung Nr. 2, daher hat sie eine größere Anzahl von Reihen.Zeit normalize eine Sprungkraft Variable in R
Ich möchte die Verschiebung von jedem Sprung auf einer Skala von 0 bis 100% der Gesamtverschiebung normalisieren, um die Kraftvariable für beide Sprünge auf gleiche Länge zu bringen. Ich möchte dann die mittlere Kraft-gegen-Verschiebungskurven-Durchschnitt über die Sprünge berechnen.
Da der Datensatz ziemlich lang ist, habe ich ein verkürztes Beispiel, wie die Daten derzeit existieren, und wie ich möchte, dass es am Ende aussieht. Ich hoffe, dass jemand in der Lage ist, einen guten Ansatz zur Normalisierung der Verschiebung auf einer Skala von 0 bis 100% bereitzustellen und sicherzustellen, dass die Anzahl der Reihen für jeden Sprung gleich ist.
Hinweis: Im folgenden Code habe ich eine Abtastfrequenz von 10 Hz gewählt, um zu verdeutlichen, wie die Daten auf einfache Art und Weise aufgebaut werden, so dass ich einen Rat zu meiner Vorgehensweise erhalten kann.
Aktuelle Rohdatenstruktur:
Jump_Number Displacement Force Time
1 0 800 0
1 -0.10 700 0.1
1 -0.29 500 0.2
1 -0.40 200 0.3
1 -0.45 100 0.4
1 -0.50 500 0.5
1 -0.30 800 0.6
1 -0.10 1200 0.7
1 -0.05 1300 0.8
1 0.05 1250 0.9
2 0 800 0.0
2 -0.10 678 0.1
2 -0.29 499 0.2
2 -0.40 178 0.3
2 -0.45 90 0.4
2 -0.50 600 0.5
2 -0.40 810 0.6
2 -0.35 999 0.7
2 -0.29 1135 0.8
2 -0.10 1250 0.9
2 -0.05 1401 1.0
2 0.05 1345 1.1
Wunsch normalisierte Datenstruktur:
Jump_Number Normalized_Displacement_(%) Force
1 0 800
1 10 700
1 20 500
1 30 200
1 40 100
1 50 500
1 60 800
1 70 1200
1 80 1300
1 90 1289
1 100 1250
2 0 800
2 10 678
2 20 499
2 30 178
2 40 90
2 50 600
2 60 810
2 70 999
2 80 1135
2 90 1250
2 100 1345
Es ist nicht ganz klar, warum Sie resultierende Spalte „normalisierten Verschiebung“ nennen, es sei denn, Werte in gewünschte Ergebnis nicht dem Beispiel entsprechen. Ich würde denken, dass die Normalisierung wie folgt durchgeführt werden kann: '(Verschiebung - min)/Bereich * 100'. – Bulat