Teilmenge mit hinzugefügter Formelspalte - fast daIch versuche, ein Skript zu erstellen, um Daten zu unterteilen, das auch eine Spalte mit einer Formel darin hinzufügt. Ich bin nah dran (irgendwie). Ich kann die Teilmenge mit der neuen Spalte erstellen, aber die neue Spalte enthält nur Punkte.
Hier ist, was ich bisher habe:
Data Table( "Melt Curve Raw Data" ) << Subset(
By( :Well Position ),
All rows,
Selected columns only( 0 ),
columns( :Temperature, :Fluorescence, New Column( "Normalized Fluorescence", formula(
(:Fluorescence - Col Min(:Fluorescence )) / (Col Max(:Fluorescence )
-Col Min(:Fluorescence )))
))
);
Nach der Suche habe ich etwas über einen Eval-Befehl gesehen, aber als Anfänger kann ich nicht herausfinden, wie ich ihn hinzufügen soll, damit er funktioniert.
**Idealerweise könnte ich die neue Spalte auch direkt nach der Temperaturspalte hinzufügen, anstatt am Ende
Vielen Dank im Voraus für jeden Rat!!
DatentabelleSkripterstellungBetreff: Teilmenge mit hinzugefügter Formelspalte - fast daIch danke dir sehr!! Die erste Lösung hat einwandfrei funktioniert. Ich bin sicher, Sie hören das die ganze Zeit, aber Sie sind ein Lebensretter!
Betreff: Teilmenge mit hinzugefügter Formelspalte - fast daHier sind 2 Lösungen für das Problem.Der erste ändert die Berechnung, um die Mindest- und Höchstwerte für die bestimmte Bohrlochposition zu verwenden, die bewertet wird.
Data Table( "Melt Curve Raw Data" ) << New Column( "Normalized Fluorescence",
formula(
(:Fluorescence - Col Min( :Fluorescence, :Well Position )) / (
Col Max( :Fluorescence, :Well Position )
-Col Min( :Fluorescence, :Well Position ))
)
);
Data Table( "Melt Curve Raw Data" ) << Subset(
By( :Well Position ),
All rows,
Selected columns only( 0 ),
columns( :Temperature, :Fluorescence, :Normalized Fluorescence )
);
Data Table( "Melt Curve Raw Data" ) << delete columns( :Normalized Fluorescence );
Der zweite erstellt die untergeordneten Datentabellen und geht dann zurück und fügt die neue Spalte für jede der neu erstellten Datentabellen hinzu
new tables = Data Table( "Melt Curve Raw Data" ) <<
Subset(
By( :Well Position ),
All rows,
Selected columns only( 0 ),
columns( :Temperature, :Fluorescence, :Normalized Fluorescence )
);
For( i = 1, i <= N Items( new tables ), i++,
new tables[i] << New Column( "Normalized Fluorescence",
formula(
(:Fluorescence - Col Min( :Fluorescence, :Well Position )) / (
Col Max( :Fluorescence, :Well Position )
-Col Min( :Fluorescence, :Well Position ))
)
)
);
Betreff: Teilmenge mit hinzugefügter Formelspalte - fast daHallo Jim! Danke für deinen Rat. Ich wünschte, ich könnte Ihre Methode verwenden, aber wenn ich die Spalte vor dem Ausführen der Teilmengen hinzufüge, verwendet die neue Spalte leider die vorherigen Höchst- und Mindestwerte, sodass die Berechnungen falsch sind.
Das Hinzufügen der neuen Spalte nach der Teilmenge funktioniert für mich, nicht sicher warum, und sie ist korrekt betitelt, aber die Formel "berechnet" nicht, weshalb ich dachte, es könnte das "eval" -Ding sein, das ich gesehen habe. Wenn ich in die neuen Spalten gehe, ist "suppress eval" aktiviert, aber ich weiß nicht, wie ich das beheben soll, ohne von Hand zu allen Teilmengen zu gehen und es zu korrigieren.
Ich habe einen Screenshot angehängt, wie es bei mir aussieht. Die Spalte erscheint, aber mit den Punkten. Wenn ich in die Spalteninfo gehe, ist "suppress eval" aktiviert, und das Deaktivieren löst den Fehler, aber es ist nicht ideal, in alle Teilmengen einzeln gehen zu müssen, um das Kontrollkästchen zu deaktivieren. Ich habe versucht, dem Skript verschiedene Codes hinzuzufügen, um die Auswertung zu unterdrücken, aber keiner von ihnen funktioniert bisher.

Betreff: Teilmenge mit hinzugefügter Formelspalte - fast daNew Column() ist in der Spaltenspezifikation für Subset() nicht erlaubt.Zumindest kann ich so etwas weder in der Dokumentation finden, noch funktioniert es in einem sehr einfachen Teilmengenbeispiel, in dem es enthalten ist.Daher habe ich Ihr Skript geändert, um die Spalte in der ursprünglichen Datentabelle zu erstellen, dann die Tabellen zu unterteilen und dann zurückzugehen und sie aus der ursprünglichen Tabelle zu löschen.
Data Table( "Melt Curve Raw Data" ) <<
New Column( "Normalized Fluorescence",
formula(
(:Fluorescence - Col Min( :Fluorescence )) / (
Col Max( :Fluorescence ) - Col Min( :Fluorescence ))
)
);
Data Table( "Melt Curve Raw Data" ) <<
Subset(
By( :Well Position ),
All rows,
Selected columns only( 0 ),
columns( :Temperature, :Fluorescence, :Normalized Fluorescence )
);
Data Table( "Melt Curve Raw Data" ) <<
delete columns( :Normalized Fluorescence );