Mit ausgeschlossenen Zeilen arbeiten?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo allerseits,
Ich habe zwei Spalten.In der ersten Spalte (Site) steht entweder die Nummer 1 oder 2 daneben.In der zweiten Spalte stehen einige Zahlenwerte.
Ich habe eine Funktion erstellt, die Rang und Perzentil berechnet.Zunächst berechnet die Funktion in einer neuen Spalte den Rang und das Perzentil.Anschließend wählt die Funktion alle Zeilen aus, die in Site 1 den Wert 1 haben, und zählt sie.Anschließend werden alle Zeilen mit dem Wert 2 in der Site-Spalte ausgewählt und ausgeschlossen und anschließend der Rang und das Perzentil in einer anderen Spalte berechnet.Das alles funktioniert.
Das Problem tritt auf, wenn ich den Rang und das Perzentil berechnen möchte, nachdem ich Zeilen mit dem Wert 2 in der Spalte „Site“ ausgewählt und ausgeschlossen habe.Es werden keine Fehler zurückgegeben, die Spalte enthält jedoch keine Werte.Ich gehe davon aus, dass dies mit dem Exclude()-Ausdruck in meiner Formel zu tun hat.Wenn ich die if-Anweisung aus F3 entferne, sodass sie genau wie F ist, erhalte ich dieselben Werte wie die Spalte daneben, aber wenn ich F3 so belasse, wie es ist, keine Werte!
Was vermisse ich?Tut mir leid, wenn das sehr offensichtlich ist...
rpFunktion = Funktion ( { Reihe , prüfen } ,
//Zeile -> Wie viele Zeilen (Geräte) enthält die Datentabelle?
//prüfen --? Für welchen Test berechnen wir RP?
Aktuelle Datentabelle ( dtZusammenfassung ) ;
Kol = Spalte ( prüfen ) ;
neuCol = „RP“ || prüfen ;
F = Evaluierungsexpr ( 100 * ( Oberstrang ( Kol ) / Ausdruck ( Reihe ) )) ;
dtZusammenfassung << Neue Spalte ( neuCol , Numerisch , Formel ( Namensausdruck ( F ) ) ) ;
Kol = Spalte ( neuCol ) ;
Kol << Formel löschen ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 1 ) ;
Zeile1 = nrows ( dtZusammenfassung << Holen Sie sich ausgewählte Zeilen ()) ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 2 ) ;
Zeile2 = nrows ( dtZusammenfassung << Holen Sie sich ausgewählte Zeilen ()) ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 2 ) ;
dtZusammenfassung << ausschließen ;
neuCol = „RP“ || prüfen || „Standort 1“ ;
F1 = Evaluierungsexpr ( 100 * ( Oberstrang ( Wenn ( ausgeschlossen () , . , Kol ) ) / Ausdruck ( Zeile1 ) )) ;
dtZusammenfassung << Neue Spalte ( neuCol , Numerisch , Formel ( Namensausdruck ( F1 ) ) ) ;
Kol = Spalte ( neuCol ) ;
Kol << Formel löschen ;
dtZusammenfassung << Wählen Sie wo aus ( : Website == 2 ) ;
dtZusammenfassung << ausschließen ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 1 ) ;
dtZusammenfassung << ausschließen ;
neuCol = „RP“ || prüfen || „Standort 2“ ;
F2 = Evaluierungsexpr ( 100 * ( Oberstrang ( Wenn ( ausgeschlossen () , . , Kol ) ) / Ausdruck ( Zeile2 ) )) ;
dtZusammenfassung << Neue Spalte ( neuCol , Numerisch , Formel ( Namensausdruck ( F2 ) ) ) ;
Kol = Spalte ( neuCol ) ;
Kol << Formel löschen ;
dtZusammenfassung << Wählen Sie wo aus ( : Website == 1 ) ;
dtZusammenfassung << ausschließen ;
) ;
Betreff: Mit ausgeschlossenen Zeilen arbeiten?Hallo MS,
Vielen Dank, dass Sie sich bei mir gemeldet haben.Das wurde mir erst klar, als ich den ganzen Ausschlusskram durchstöberte.Anfangs dachte ich, ich müsste Zeilen ausschließen, also habe ich mich dafür entschieden.Mir gefällt die Einfachheit Ihres Codes viel besser, danke!
Betreff: Mit ausgeschlossenen Zeilen arbeiten?Wäre es nicht einfacher, die Site direkt in der If-Anweisung anzusprechen und den Ausschluss von Zeilen ganz zu vermeiden? Zum Beispiel:
rpFunktion = Funktion ({ prüfen } ,
F = Evaluierungsexpr ( 100 * ( Oberstrang ( Ausdruck ( Spalte ( prüfen ))) / Spaltennummer ( : Website ))) ;
dtZusammenfassung << Neue Spalte ( „RP“ || prüfen , Numerisch , Formel ( Namensausdruck ( F ))) ;
F = Evaluierungsexpr ( 100 * ( Oberstrang ( Wenn ( : Website != 1 , . , Ausdruck ( Spalte ( prüfen )))) / Col Summe ( : Website == 1 ))) ;
dtZusammenfassung << Neue Spalte ( „RP“ || prüfen || „Standort 1“ , Numerisch , Formel ( Namensausdruck ( F ))) ;
F = Evaluierungsexpr ( 100 * ( Oberstrang ( Wenn ( : Website != 2 , . , Ausdruck ( Spalte ( prüfen )))) / Col Summe ( : Website == 2 ))) ;
dtZusammenfassung << Neue Spalte ( „RP“ || prüfen || „Standort 2“ , Numerisch , Formel ( Namensausdruck ( F ))) ;
) ;
Betreff: Mit ausgeschlossenen Zeilen arbeiten?Vielen Dank, Jim.Es funktioniert!Ich habe nicht einmal daran gedacht, mir das anzusehen.Ich war so darauf fixiert, Zeilen auszuschließen, da es für mich neu war und nicht auf das Offensichtliche schaute!Danke noch einmal.
Betreff: Mit ausgeschlossenen Zeilen arbeiten?Natalie,
Ich glaube, ich habe es gefunden.
Wenn Sie „Col=Newcol“ zum zweiten Mal zuweisen, glaube ich nicht, dass Sie es der neuen Spalte zuweisen möchten.Sie möchten eigentlich, dass col auf die Spalte „Rp Irgl“ zeigt.Nicht in die neue Spalte namens „Rp Irgl“ für Standort 1. Sie verwenden den Wert von „col“ in Ihrer Formel und haben ihn gerade dem „Rp Irgl“ für Standort 1 neu zugewiesen.
Ich habe gerade das geändert
col=newcol;
col<
Zu
xcol=newcol;
xcol<
Die dritte Verwendung von col=newcol; und col<Betreff: Mit ausgeschlossenen Zeilen arbeiten?
Hi natalie_
Vielleicht könnten Sie ein wait() zwischen den Auswahlen verwenden.
Andernfalls sparen Sie Zeit, indem Sie Teilmengen der Originaltabelle verwenden und die Originaltabelle mit den benötigten Berechnungen aktualisieren. Stellen Sie lediglich sicher, dass Sie die Daten in der Originaltabelle nicht überschreiben.
Ron
Betreff: Mit ausgeschlossenen Zeilen arbeiten?Hallo Jim,
Vielen Dank, dass Sie sich bei mir gemeldet haben.Leider funktioniert der Code immer noch nicht
Mir ist aufgefallen, dass Sie in dem Code, den Sie mir geschickt haben, unter der Auswahl „Site 2“ kein „exclude(1)“ hinzugefügt haben.Ich habe es hinzugefügt, aber leider hat es nicht funktioniert.Ich habe eine Bildschirmpräsentation angehängt, um Ihnen zu zeigen, wie meine Datentabelle aussieht.Die ersten beiden RP-Spalten sind das, was ich will, aber die letzte hat keine Werte.
rpFunktion = Funktion ( { Reihe , prüfen } ,
//Zeile -> Wie viele Zeilen (Geräte) enthält die Datentabelle?
//prüfen --? Für welchen Test berechnen wir RP?
Aktuelle Datentabelle ( dtZusammenfassung ) ;
Kol = Spalte ( prüfen ) ;
neuCol = „RP“ || prüfen ;
F = Evaluierungsexpr ( 100 * ( Oberstrang ( Kol ) / Ausdruck ( Reihe ) )) ;
dtZusammenfassung << Neue Spalte ( neuCol , Numerisch , Formel ( Namensausdruck ( F ) ) ) ;
Kol = Spalte ( neuCol ) ;
Kol << Formel löschen ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 1 ) ;
Zeile1 = nrows ( dtZusammenfassung << Holen Sie sich ausgewählte Zeilen ()) ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 2 ) ;
Zeile2 = nrows ( dtZusammenfassung << Holen Sie sich ausgewählte Zeilen ()) ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 2 ) ;
dtZusammenfassung << ausschließen ( 1 ) ;
neuCol = „RP“ || prüfen || „Standort 1“ ;
F1 = Evaluierungsexpr ( 100 * ( Oberstrang ( Wenn ( ausgeschlossen () , . , Kol ) )) / Ausdruck ( Zeile1 ) ) ;
dtZusammenfassung << Neue Spalte ( neuCol , Numerisch , Formel ( Namensausdruck ( F1 ) ) ) ;
Kol = Spalte ( neuCol ) ;
Kol << Formel löschen ;
dtZusammenfassung << Wählen Sie wo aus ( : Website == 2 ) ;
dtZusammenfassung << ausschließen ( 0 ) ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 1 ) ;
dtZusammenfassung << ausschließen ( 1 ) ;
neuCol = „RP“ || prüfen || „Standort 2“ ;
F2 = Evaluierungsexpr ( 100 * ( Oberstrang ( Wenn ( ausgeschlossen () , . , Kol ) )) / Ausdruck ( Zeile2 ) ) ;
dtZusammenfassung << Neue Spalte ( neuCol , Numerisch , Formel ( Namensausdruck ( F2 ) ) ) ;
Kol = Spalte ( neuCol ) ;
Kol << Formel löschen ;
dtZusammenfassung << Wählen Sie wo aus ( : Website == 1 ) ;
dtZusammenfassung << ausschließen ( 1 ) ;
) ;

Betreff: Mit ausgeschlossenen Zeilen arbeiten?Natalie,
Ich habe Ihren Code genommen und eine ganz kleine Änderung daran vorgenommen; Ich habe das Aufheben und Ausschließen in „Exclude(0|1)“ geändert.Dies stellt die korrekte Wirkung der Nachricht sicher.Beim Ausschließen und Aufheben des Ausschlusses handelt es sich tatsächlich um Schalter, nicht um absolute Nachrichten.
Der Code scheint zu funktionieren:
rpFunktion = Funktion ( {Reihe , prüfen} ,
//Zeile -> Wie viele Zeilen (Geräte) enthält die Datentabelle?
//prüfen --? Für welchen Test berechnen wir RP?
Aktuelle Datentabelle ( dtSummary ) ;
Kol = Spalte ( prüfen ) ;
neuCol = „RP“ || prüfen ;
F = Evaluierungsexpr ( 100 * ( Oberstrang (col) / Ausdruck (Reihe) )) ;
dtZusammenfassung << Neue Spalte (neue Spalte , Numerisch , Formel( Namensausdruck ( F ) ) ) ;
Kol = Spalte (newCol) ;
Kol << Formel löschen;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 1 ) ;
Zeile1 = nrows (dtZusammenfassung < ()) ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 2 ) ;
Zeile2 = nrows (dtZusammenfassung < ()) ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 2 ) ;
dtZusammenfassung << ausschließen;
neuCol = „RP“ || prüfen || „Standort 1“ ;
F1 = Evaluierungsexpr ( 100 * ( Oberstrang ( Wenn ( ausgeschlossen () , . , col) ) / Ausdruck (Zeile1) )) ;
dtZusammenfassung << Neue Spalte (neue Spalte , Numerisch , Formel( Namensausdruck ( F1 ) ) ) ;
Kol = Spalte (newCol) ;
Kol << Formel löschen;
dtZusammenfassung << Wählen Sie wo aus ( : Website == 2 ) ;
dtZusammenfassung << ausschließen ( 0 ) ;
dtZusammenfassung << Wählen Sie „Wo“. ( : Website == 1 ) ;
dtZusammenfassung << ausschließen ( 1 ) ;
neuCol = „RP“ || prüfen || „Standort 2“ ;
F2 = Evaluierungsexpr ( 100 * ( Oberstrang ( Wenn ( ausgeschlossen () , . , col) ) / Ausdruck (Zeile2) )) ;
dtZusammenfassung << Neue Spalte (neue Spalte , Numerisch , Formel( Namensausdruck ( F2 ) ) ) ;
Kol = Spalte (newCol) ;
Kol << Formel löschen;
dtZusammenfassung << Wählen Sie wo aus ( : Website == 1 ) ;
dtZusammenfassung << ausschließen ( 0 ) ;
) ;

Betreff: Mit ausgeschlossenen Zeilen arbeiten?Ich bin mir nicht sicher, ob das hilfreich ist, aber in älteren Versionen des Programms reagierten Spaltenformeln nicht auf Ausschlüsse.
Andernfalls ist es besser, die Berechnungen auf der Grundlage von << get rows where () statt auf der Grundlage der Auswahl durchzuführen.
Ron
Betreff: Mit ausgeschlossenen Zeilen arbeiten?EDIT: F3 in meiner Erklärung sollte eigentlich F2 heißen.