將列變量插入公式嗨,
我試圖將一個腳本添加到數據表,允許用戶通過分隔符解析給定的給定列(:文件名),用戶將通過顯示框(delim)選擇。 理想情況下,公式將繼續解析:文件名列,直到沒有任何內容需要解析。 我的腳本塊在下面。 在其中,我為每個解析的段創建一個新列(col):文件名。 然後我檢查col是否缺少值,然後在整個列為空時停止。
我的問題是我不能在公式中評估col。 我甚至嘗試過使用女士 'Eval(Parse(Eval Insert()))技巧,但我無法讓它發揮作用。 有什麼建議嗎?我正在使用JMP11。
謝謝!
// Example script.
// Note: col = Column( "Column 442" );
delim = "-";
i = 1;
j = 1;
While( j > 0,
j = 0;
col = dt << New Column();
col << Data Type( Character, Nominal );
col << Set Formula( Word( i, :File Name, delim ) );
For Each Row( If( Is Missing( :Column 442 ) == 0, j = j + 1 ) ); // This works.
Eval( Parse( Eval Insert( "For Each Row( If( Is Missing(:Column 442) == 0, j = j + 1 ) )" ) ) ); // This works.
Eval( Parse( Eval Insert( "For Each Row( If( Is Missing(^col^) == 0, j = j + 1 ) )" ) ) ); // This does not work.
Eval( Parse( Eval Insert( "For Each Row( If( Length(^col^) != 0, j = j + 1 ) )" ) ) ); // This does not work.
i = i + 1;
);
Re:將列變量插入公式<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />謝謝MS!
Re:將列變量插入公式還要記住:col指的是一個整體的列。 在For Each Row循環中,您需要使用[]表示法來引用當前單元格(不是每個循環使用的眾多原因之一!)。
Re:將列變量插入公式變量關口是對列的引用。但是在ForEachRow()循環中,我們不需要訪問列而是訪問它的值。 以下兩種選擇都應該適用於您的代碼。請注意第二個示例中的空索引[]。
EVAL ( 解析 ( 評估插入 ( “對於每一行(如果(缺少(作為列(^ col ^))== 0,j = j + 1))” ))) ;
EVAL ( 解析 ( 評估插入 ( “對於每一行(如果(缺少(^ col ^ [])== 0,j = j + 1))” ))) ;
Re:將列變量插入公式好吧,我不會嘗試理解你的代碼,但關於語法,你說以下工作:
EVAL ( 解析 ( 評估插入 ( “
對於每一行(如果(缺失(:列442)== 0,j = j + 1));
“ ))) ;
Eval模式中的內容是一個字符串,所以你放在^ ... ^中的變量就像一個字符串,所以要概括你想要的東西,如下所示
COLNAME = 關口 << 得到名字 ; //例如colName =“Column 442”
EVAL ( 解析 ( 評估插入 ( “
對於每一行(如果(缺少(:^ cName ^)== 0,j = j + 1));
“ ))) ;