Hallo,
Ich habe ein einfaches Skript, in dem ich eine neue Spalte erstellen möchte, in der eine Formel den absoluten Wert einer anderen Spalte berechnet.
Auf die Spalte wird in einer Liste verwiesen.
Ich habe verschiedene Möglichkeiten ausprobiert, kann aber nicht herausfinden, wie ich die Spalte, auf die verwiesen wird, auswerten soll, sodass ich am Ende eine leere Formelspalte erhalte. Jeder Vorschlag wäre sehr dankbar.
Am besten
Sebastian
dt=New Table( "test",
Add Rows( 4 ),
New Column( "symbol",
Character,
"Nominal",
Set Values( {"a", "b", "c", "d"} ),
Set Display Width( 55 )
),
New Column( "fold change",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [-3, -0.4, 0.4, 3] ),
Set Display Width( 68 )
)
);
l={"fold change"};
try(New Column( "absolute fold change",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula( Abs( l[1] )
)));
try(New Column( "absolute fold change 2",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula( eval(column(l[1]) )
)));
dt=New Table( "test",
Add Rows( 4 ),
New Column( "symbol",
Character,
"Nominal",
Set Values( {"a", "b", "c", "d"} ),
Set Display Width( 55 )
),
New Column( "fold change",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [-3, -0.4, 0.4, 3] ),
Set Display Width( 68 )
)
);
l = {"fold change"};
try(New Column( "absolute fold change",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula( Abs( column( l[1] )[] )
)));Da Ihre Liste nur Zeichenfolgen enthält, müssen Sie JMP mithilfe der Funktion Column( "" )[ ] mitteilen, dass es sich bei der Zeichenfolge um einen Spaltennamen handelt.
Die leeren eckigen Klammern sind erforderlich und auch ohne sie verweist die Formel auf die gesamte Spalte statt nur der entsprechenden Zeile.
Hoffe das hat geholfen,
Gelegen