我想使用數字列中的值來建立對相同列號的引用我產生了一個包含整數的列,現在想用它來引用相同數字列中的值。第 9 列包含一個數字,指示第 10 列的公式應引用哪一列。以下是一些無法正常運作的情況。



自動化和腳本回覆:我想使用數字列中的值來建立對相同列號的引用當您將滑鼠懸停在帶有紅色底線的程式碼上時,會顯示哪一個錯誤訊息?
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Column( "Column 9",
Numeric,
Set Values( [1, 2, 3, 4, 5] )
);
New Column( "Column 10",
Expression,
Formula( Try( Column( :Column 9 ) ) )
)
沒有錯誤:


如果您不想檢索列 - 但想要檢索儲存在列中的值,請使用作為列()而不是column():
穩健的列引用
……或為Column() 新增行索引:
列(col)[row()]或列(col)[]
New Column( "Column 10b",
Character,
Formula( Try( Char( Column( :Column 9 )[Row()] ) ) )
)

除此之外,
- 請確保計算值與柱的建模類型相符。
第 1 列到第 5 列包含數字和字元。這就是我添加Char() 的原因。
- 柱子(。)將失敗,列公式將終止。因此,請檢查第 9 列中是否缺少索引
回覆:我想使用數字列中的值來建立對相同列號的引用霍吉
謝謝,但是這些只是給我第 9 列中已有的值,我想查找第 9 列中列舉的不同列的值,這是否有意義?
回覆:我想使用數字列中的值來建立對相同列號的引用結合這兩種方法,讓我們在第一步驟中檢索列,並在第二步中檢索值:
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Column( "column",
Expression,
Formula( Try( Column( Row() ), . ) ),
);
New Column( "value",
Character,
Formula( Try( Char( :column[Row()][Row()] ), "" ) ),
)
why :column[Row()][Row()]?
:柱子是第 9 列,
:column[row()]是此列特定行中的項目,例如Column("sex")
:column[row()][row()]是特定行中的條目,例如Column ("sex")

回覆:我想使用數字列中的值來建立對相同列號的引用霍吉
很棒的補充!沒什麼好事之類的…
我現在需要對相對於第 9 列儲存的最大值的每一列進行迭代操作。在這種情況下,i 值的正常添加並不自然適用。
clear symbols();
lim = Col Max(Column(8));
For (i=1, i<=lim, i++,
New Column( "Column 10b",
Character,
Formula( Try( Char( Column( :Column 9 )[Row()] ) ) )
));
回覆:我想使用數字列中的值來建立對相同列號的引用
@SpannerHead寫道:
在這種情況下,i 值的正常添加並不自然適用。
一個非常常見的問題:
在新列訊息之外定義並在新列訊息內部使用的變數:
-> JMP 中的表達式處理:提示與陷門
解決方案:尋找變數並使用儲存的值:
For each ({i}, 1::5,
Eval(Eval Expr(New Column( "col_"||char(i),
Character,
Formula( Try( Char( Column( Expr(i) )[Row()] ) ) )
))));
更強大:
For each ({i}, 1::5,
Eval(Eval Expr(New Column( "col_"||char(i),
Character,
Formula( Try( Char( Expr(Name Expr(As Column( i )) )) ) )
))));
從我在@jthi的帖子中看到它的第一天起,我就很欣賞 Name Expr(As Column(col)) 並儘可能地使用它。
透過從https://community.jmp.com/t5/Discussions/Using-numeric-objects-in-a-column-equation/mp/903966/highlight/true#M106273學習,我很高興這種方法幫助我避免了許多陷阱。
作為列公式中的 Column(col)或列(col) ?太脆弱了!