如何檢查列列表是否存在並使用彈出窗口報告缺少的列?大家好!
我想測試數據表中是否存在 5 個列名的列表。
如果缺少一列或多列,我希望彈出一個窗口,告訴用戶缺少哪些列。 如果所有列都存在,則腳本應繼續運行。
您能指出我如何寫的正確方向嗎?
謝謝!
高級統計建模自動化和腳本編寫數據混合和清理大規模定制質量和工藝工程回复:如何檢查列列表是否存在並使用彈出窗口報告缺少的列?關聯數組的方法很棒!
但請注意,這裡描述的比較只是發現精確的火柴。
一般來說,對於 Jmp,列名中是否有大寫字母或空格並不重要。
因此,根據您的應用案例,也許檢查列列表是否存在也不應該在意。
非常穩健的是@tx尼爾森的做法:
r=try(column(dt,tn)<<GET name=""></GET>
檢查列是否存在?
鑑於列存在檢查的所有陷阱 - 在我看來,Jmp 應該提供一種可靠的方法來詢問數據表是否存在列。
這是願望清單中的帖子:
數據表:消息列存在(列名)?
回复:如何檢查列列表是否存在並使用彈出窗口報告缺少的列?謝謝你! 這是一個有趣的解決方案! 我真的應該學會與關聯數組...
回复:如何檢查列列表是否存在並使用彈出窗口報告缺少的列?謝謝你! 這正是我一直在尋找的!
回复:如何檢查列列表是否存在並使用彈出窗口報告缺少的列?您可以使用消除()關聯數組的方法可以在沒有任何 JSL 循環的情況下執行此操作:
Names Default to Here( 1 );
reference table = New Table( "TEST",
<<NEW column=""></NEW>
回复:如何檢查列列表是否存在並使用彈出窗口報告缺少的列?這是執行此操作的一種方法的簡單示例
Names Default To Here( 1 );
// Open Data Table: big class.jmp
// → Data Table( "big class" )
dt = Open( "$SAMPLE_DATA/big class.jmp" );
colList = dt << get column names( string );
requiredList = {"name", "sex", "shoe size"};
For( i = N Items( requiredList ), i >= 1, i--,
If( Contains( colList, requiredList[i] ),
Remove From( requiredList, i, 1 )
)
);
stop = "NO";
If( N Items( requiredList ) > 0,
stop = "YES";
New Window( "Error",
Modal,
V List Box(
Text Box( "The following column(s) are required" ),
Text Box( "but were not found in the data table." ),
Spacer Box( size( 1, 10 ) ),
List Box( requiredList )
)
);
);
If( stop == "YES", Throw() );回复:如何檢查列列表是否存在並使用彈出窗口報告缺少的列?嗨羅布!
感謝您的建議! 我想使用 JSL 來執行此任務,因為我計劃將其合併到我的一些腳本中,但也希望為用戶提供用戶友好的 GUI 消息,以防列丟失。
不過謝謝!
阿迪
回复:如何檢查列列表是否存在並使用彈出窗口報告缺少的列?嗨,拉維克17,
您是否嘗試過使用列下拉菜單中的列視圖選擇器? 然後,使用匯總統計功能,您可以輕鬆搜索您的五列名稱並確定它們是否缺少數據。
我希望這有幫助,
搶