So berechnen Sie prozentuale Unterschiede zwischen Zeilen, die auf eine Zelle in einer anderen Spalte verweisenHallo alle,
Ich habe die folgende Tabelle.Für jedes Thema möchte ich die prozentuale Differenz der Werte d1, d2, d3 und d4 in der Spalte „Wert“ relativ zum Bildschirmwert berechnen.Die Formel lautet ((d1-Bildschirm)/Bildschirm)*100 und wird für die Werte d2 bis d4 für Proband 1 wiederholt. Wenn sich dann die Probandennummer ändert, wird der Bildschirmwert für Proband 2 für die Berechnung unter Verwendung der d1 bis d4 von Proband 2 referenziert Werte usw.Ich bin mir sicher, dass es eine Möglichkeit gibt, dies zu tun, aber es ist mir nicht gelungen, eine zu identifizieren.
Vielen Dank im Voraus
Floyd Fox

Betreff: So erstellen Sie ein Skript für prozentuale Unterschiede zwischen Zeilen, die auf eine Zelle in einer anderen Spalte verweisen<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ja, Bildschirm An der Zeilenposition kann man herumspielen. Aber falls Bildschirm zwangsläufig immer den Maximalwert innerhalb eines Subjekts haben muss, funktioniert diese Formel auch:
: Wert / Oberst Max ( : Wert , : Thema ) - 1
Betreff: So erstellen Sie ein Skript für prozentuale Unterschiede zwischen Zeilen, die auf eine Zelle in einer anderen Spalte verweisenWenn ich Ihren Erweiterungswunsch richtig interpretiere, würde Ihre Datentabelle jetzt so aussehen?

Bei Verwendung der von mir ursprünglich vorgeschlagenen Methode hätte das Skript einige kleinere Änderungen:
Namen standardmäßig hier ( 1 ) ;
dt = Aktuelle Datentabelle () ;
// Erstellen Sie eine Datentabelle nur mit Bildschirmwerten
dt << Wählen Sie wo aus ( : Tag == "Bildschirm" ) ;
dtscreen = dt << Teilmenge ( ausgewählte Zeilen ( 1 ) , ausgewählten Spalten ( 0 ) ) ;
dtscreen << Spalten löschen ( "Tag" ) ;
dtscreen : Wert << Name einsetzen ( „Bildschirmwert“ ) ;
dtscreen : Wert 2 << Name einsetzen ( „Bildschirmwert 2“ ) ;
// Die Daten wieder zusammenfügen
dt << Aktualisieren ( Mit ( dtscreen ) , Spalten anpassen ( : Thema = : Thema ) ) ;
Schließen ( dtscreen , nosave ) ;
// Führen Sie die endgültige Berechnung durch
dt << Neue Spalte ( „% Abweichung vom Bildschirm“ , Formel (( : Wert - : Bildschirmwert ) / : Bildschirmwert ) , Format ( "Prozent" , 7 , 2 )) ;
dt << Neue Spalte ( „% Differenz von Bildschirm 2“ , Formel (( : Wert 2 - : Bildschirmwert 2 ) / : Bildschirmwert 2 ) , Format ( "Prozent" , 7 , 2 )) ;
Dies würde einen Finaltisch ergeben, der wie folgt aussieht:

Die Verwendung der von MS vorgeschlagenen Methodik hat den Vorteil, dass sie einfach durch die Angabe einer Formel für die neue Spalte erreicht werden kann.Es basiert jedoch auf der Bestimmung der Position der Bildschirmzeile, was möglicherweise keine gültige Annahme ist, wenn Sie diese mit realen Daten verwenden.
Betreff: So erstellen Sie ein Skript für prozentuale Unterschiede zwischen Zeilen, die auf eine Zelle in einer anderen Spalte verweisenMS,
Vielen Dank.Ich habe Jim eine Frage gestellt und würde Ihnen die gleiche Frage stellen.
Wenn ich zwei (oder mehr) Wertespalten habe, die unterschiedliche Beobachtungssätze auf dem Bildschirm d1, d2 usw. darstellen, welche Änderungen müsste ich vornehmen, um die Differenz für jede Wertespalte zu berechnen?Danke
Floyd
Betreff: So erstellen Sie ein Skript für prozentuale Unterschiede zwischen Zeilen, die auf eine Zelle in einer anderen Spalte verweisenJim,
Vielen Dank, das ist sehr nützlich.Wenn ich zwei (oder mehr) Wertespalten habe, die unterschiedliche Beobachtungssätze auf dem Bildschirm d1, d2 usw. darstellen, welche Änderungen müsste ich vornehmen, um die Differenz für jede Wertespalte zu berechnen?Danke
Floyd
Betreff: So erstellen Sie ein Skript für prozentuale Unterschiede zwischen Zeilen, die auf eine Zelle in einer anderen Spalte verweisenHier sind zwei weitere Möglichkeiten, dies zu tun. Beide verwenden die Funktion Col Min(), um die erste Zeile für jedes Thema zu finden, und hängen somit von der aktuellen Sortierung ab (Jims Lösung hat den Vorteil, unabhängig von der Sortierung zu sein).
dt = Aktuelle Datentabelle () ;
// Statische Werte festlegen
Spalte 1 = dt << Neue Spalte ( „Bildschirmwert“ , numerisch ) ;
Spalte2 = dt << Neue Spalte ( „% Abweichung vom Bildschirm“ , numerisch , Format ( Prozent , 1 )) ;
Für jede Reihe (
Spalte 1 [] = : Wert [ Col Min ( Reihe () , : Thema )] ;
Spalte2 [] = ( : Wert - Spalte 1 []) / Spalte 1 [] ;
) ;
// Spaltenformel, alles in einem Schritt.
dt << Neue Spalte ( „% Abweichung vom Bildschirm“ ,
Format ( Prozent , 1 ) ,
Formel (( : Wert - : Wert [ Col Min ( Reihe () , : Thema )]) / : Wert [ Col Min ( Reihe () , : Thema )])
) ;
Betreff: So erstellen Sie ein Skript für prozentuale Unterschiede zwischen Zeilen, die auf eine Zelle in einer anderen Spalte verweisenHier ist ein einfaches Skript, das genau das tut, was Sie wollen:
Namen standardmäßig hier ( 1 ) ;
dt = Aktuelle Datentabelle () ;
// Erstellen Sie eine Datentabelle nur mit Bildschirmwerten
dt << Wählen Sie wo aus ( : Tag == "Bildschirm" ) ;
dtscreen = dt << Teilmenge ( ausgewählte Zeilen ( 1 ) , ausgewählten Spalten ( 0 ) ) ;
dtscreen << Spalten löschen ( "Tag" ) ;
dtscreen : Wert << Name einsetzen ( „Bildschirmwert“ ) ;
// Die Daten wieder zusammenfügen
dt << Aktualisieren ( Mit ( dtscreen ) , Spalten anpassen ( : Thema = : Thema ) ) ;
Schließen ( dtscreen , nosave ) ;
// Führen Sie die endgültige Berechnung durch
dt << Neue Spalte ( „% Abweichung vom Bildschirm“ , Formel ( ( : Wert - : Bildschirmwert ) / : Bildschirmwert ) , Format ( "Prozent" , 7 , 2 ) ) ;