使用通用腳本連接不同的表你好,
我知道我們可以在表格標題下輕鬆連接表格,但我正在嘗試開發一個無需指定列名即可連接表格的腳本。
我有三個數據表。前兩列始終相同,但其他列的名稱可以更改。情況會變得更加複雜,因為對於不同的批次,我可以使用相同的三個資料表,但前兩列的名稱可能會更改。因此,我嘗試使用前兩列的位置作為連接列來連接這三個表,並將其他列一起添加到一個大數據表中。
我嘗試使用變數或列位置,但不起作用。我也嘗試了 New SQL Query() 函數,但我認為它也必須指定列。
有誰知道如何開發一個通用腳本,可以簡單地將三個不同的表合併為一個?
資料混合與清理回覆:使用通用腳本連接不同的表最簡單的方法是編寫一個腳本,將列重命名為相同的名稱,但也可以編寫一個腳本來使用不同的列名。
回覆:使用通用腳本連接不同的表有沒有辦法讓腳本變得「通用」?這樣就不必在腳本中指定列名了?
也許腳本可以從資料本身獲取列名?
回覆:使用通用腳本連接不同的表我弄清楚了劇本:
dt = {資料表(“X”),資料表(“Y”),資料表(“Z”)};
// 以第一個表格為基礎
連接DT = dt[1];
// 依序將剩餘的每個表連接到累積結果
對於(i = 2,i <= N 個項目(dt),i ++,
tmpDT = joinedDT << 加入(
使用(responseTables[i]),
刪除倍數(1,1),
包括不匹配項(0,0),
合併同名列,
保留主表順序(1)
(此處似有缺失,無法翻譯);
// 重新命名中間表
tmpDT << 設定名稱("中間資料表");
// 將 joinedDT 替換為新連接的表,以便進行下一次迭代
連接DT = tmpDT;
(此處似有缺失,無法翻譯);
我希望腳本索引中有更多關於 Join 函數這一部分的資訊:
刪除倍數(1,1),
包括不匹配項(0,0),
合併同名列,
保留主表順序(1)
我必須反覆嘗試才能弄清楚!
回覆:使用通用腳本連接不同的表在 JMP 中以互動方式操作通常是學習這類知識的方法。你可以從「腳本索引」頁面前往「幫助」頁面,那裡有更多解釋:使用 JMP > 重塑資料 > 連接資料表
回覆:使用通用腳本連接不同的表謝謝,我不知道它會直接跳到支援頁面。這很有用,但是它沒有腳本的說明。這正是我想要的,因為我想編寫一個腳本來建立一個可以自動執行此操作的插件。
回覆:使用通用腳本連接不同的表JSL 語法參考有時比腳本指南開啟的說明頁面更好(有時它確實引用了 JSL 語法參考)
JSL 語法參考 > JSL 訊息 > 資料表訊息並尋找 <

您可以從JMP 文件中找到 JSL 語法參考的 .pdf 版本(我更喜歡 JMP 幫助的搜尋是其他內容...)。
此外,幫助頁面確實解釋了這些選項,但從平台幫助頁面完全理解它可能有點困難:
Drop Multiples(1,1),

Include Nonmatches(0,0),

合併同名列,

Preserve Main Table Order(1)

一般來說,反覆試驗(或讓 JMP 為您編寫腳本)是開始學習 JSL 的好方法。
回覆:使用通用腳本連接不同的表這非常有幫助,非常感謝您為我指明正確的方向!