Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Synchronisierung unterschiedlicher Zeiten
#1
Tach zusammen,

ich habe folgendes Problem und weiß nicht wie ich es lösen kann: Ich soll verschiedene Datensätze zeitlich so synchronisieren, dass sie alle zur gleichen Uhrzeit beginnen. Die Daten sind aus einem oralen Glukosetoleranztest (oGTT) und wurden (damit die Daten von mehreren Probanden analysiert werden können) auf drei Zeitpunkte aufgeteilt: 08:00 Uhr (oGTT + 0), 08:20 Uhr (oGTT + 20) und 08:40 Uhr (oGTT + 40). Die Glukosewerte liegen im Zeitraum von 07:00 Uhr bis 12:30 Uhr vor. Für die Auswertung sollen alle Zeitpunkte auf 8:00 Uhr gesetzt werden und die Daten in einem Zeitraum von insgesamt 3 Stunden nach Beginn des oGTT analysiert werden, d. h. 1) 08:00 - 11:00 Uhr, 2) 08:20 - 11:20 Uhr und 3) 08:40 Uhr bis 11:40 Uhr.

Für die Daten im Zeitraum 08:00 - 11:00 Uhr bleibt alles gleich. Die Daten von 08:20 - 11:20 Uhr und 08:40 - 11:40 Uhr hingegen sollen auf 8:00 - 11:00 Uhr synchronisiert werden. Daten um 08:22 Uhr beispielsweise (für oGTT + 20) sollen dann entsprechend bei 08:02 Uhr (für oGTT + 0) liegen, Daten um 09:46 Uhr (für oGTT + 20) bei 09:26 Uhr, etc.

Zusätzlich sollen die fehlenden Werte (in der entstehenden Datenlücke) zwischen dem letzten Wert des oGTT und dem ersten Wert des Zeitraums danach linear interpoliert werden (oGTT + 20: ab 11:21 Uhr und oGTT + 40: ab 11:41 Uhr) und zusätzlich entsprechend viele Werte (in Abhängigkeit der Länge der Verschiebung) davor.

Ich habe das mal zur besseren Übersicht in eine Excel-Datei gepackt. Momentan mache ich das alles manuell, aber bei so vielen Datensätzen, wie ich habe, ist das sehr fehleranfällig und zeitaufwändig. Wie kann eine passende Formel aussehen?

Danke!

Gruß,
Dr.No


Angehängte Dateien
.xlsx   oGTT.xlsx (Größe: 39,73 KB / Downloads: 6)
Antwortento top
#2
Nach langem hin und her habe ich den ersten Teil geschafft. Über entsprechende Bedingungen kann ich die Zeitpunkte von 08:20 Uhr und 08:40 Uhr auf 08:00 Uhr synchronisieren. Die lineare Interpolation muss ich aber immer noch von Hand erledigen.

Ist es möglich die Interpolation über einen bestimmten Bereich (z. B. 20 Werte oder 40 Werte) zu festgelegten Zeitpunkten durchzuführen? In der Excel-Datei sind diese Werte wieder farbig markiert. Bei oGTT + 20 sollen die Werte von 07:40 bis 07:59 Uhr und von 11:01 bis 11:20 Uhr interpoliert werden und bei oGTT + 40 die Werte von 07:20 bis 07:59 Uhr und von 11:01 bis 11:40 Uhr.

Danke für eure Hilfe!


Angehängte Dateien
.xlsx   oGTT_a.xlsx (Größe: 75,86 KB / Downloads: 1)
Antwortento top
#3
Ich habe im Internet eine Formel gefunden, mit deren Hilfe ich die Werte in leeren Zellen interpolieren kann:

{=WENN(M3;M3;VERWEIS(9;1/($M$3:M3<>"");$M$3:M3)+(INDEX($M3:M$333;VERGLEICH(WAHR;($M3:M$333<>"");0))-VERWEIS(9;1/($M$3:M3<>"");$M$3:M3))/(MIN(WENN($M4:M$333<>"";ZEILE($M4:M$333)))-VERWEIS(9;1/($M$3:M3<>"");ZEILE($M$3:M3)))*(ZEILE(M3)-(VERWEIS(9;1/($M$3:M3<>"");ZEILE($M$3:M3)))))}

Das Problem dabei ist, dass das nur funktioniert, wenn die Zellen auch wirklich komplett leer sind. In meiner Formel habe ich die Zellen, die interpoliert werden müssen, durch "" leer gemacht bzw. erscheinen lassen (was sie ja aber nicht sind):

=WENN(($A3>=V$2)*($A3V$4)*($A3<=V$5));"";WENN(($A3>=V$3)*($A3<=V$5);INDEX(C$3:C$333;ZEILE()+18);INDEX(C$3:C$333;ZEILE()-2))))

Dadurch gibt mir aber die obige Formel den Fehler #Wert! aus. Sobald ich die Zellen, die ich interpolieren möchte, komplett lösche, d. h. den Inhalt entferne, funktioniert alles problemlos.

Wie muss ich die Formel(n) entsprechend anpassen?

Gruß,
Dr.No


Angehängte Dateien
.xlsx   oGTT_final.xlsx (Größe: 117,56 KB / Downloads: 2)
Antwortento top
#4
Problem gefunden. Es hat der Abgleich <>"" ganz am Anfang gefehlt:

{=WENN(M3<>"";M3;VERWEIS(9;1/($M$3:M3<>"");$M$3:M3)+(INDEX($M3:M$333;VERGLEICH(WAHR;($M3:M$333<>"");0))-VERWEIS(9;1/($M$3:M3<>"");$M$3:M3))/(MIN(WENN($M4:M$333<>"";ZEILE($M4:M$333)))-VERWEIS(9;1/($M$3:M3<>"");ZEILE($M$3:M3)))*(ZEILE(M3)-(VERWEIS(9;1/($M$3:M3<>"");ZEILE($M$3:M3)))))}
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste