將多個列名稱直接貼上到列對話框過濾器中主題:新增內建功能,允許直接從剪貼簿貼上列名稱清單到列對話方塊篩選器。
今天的解決方法:截至今天,我編寫了一個腳本,該腳本獲取剪貼簿內容(加載了列名稱)並將其轉換為正規表示式。然後,我將此正規表示式貼上到過濾器中,並選擇“正規表示式”過濾模式。這有效,但有點痛苦。
我在使用“列切換器”時經常使用它,但我認為這可能適用於許多其他需求。
內容組織數據探索和視覺化回复:直接在列對話框過濾器中粘貼多個列名 - 狀態更改為:已確認你好@達米恩, 謝謝你的建議! 我們已收到您的請求並將予以考慮。
回复:直接在列對話框過濾器中粘貼多個列名對於我個人使用,我使用不帶雙引號和大括號的名稱。
分隔符可以是逗號、空格、製表符或進紙框。
列表源可能來自 JMP 或 Excel。
我使用完美匹配。
請在下面找到我寫的腳本(我使用 Python 調用進行特殊字符替換,因為 JMP 腳本在處理“[”時很痛苦):
輸入 = 窗口緩衝區中的列表
輸出 = 窗口緩衝區中的正則表達式(然後,我將其粘貼到 JMP 的過濾器中並選擇“正則表達式”模式)
//RAMIS - 2021
Names Default To Here( 1 );
//Get clipboard
data = Get Clipboard();
//split list into array
testList_raw = Words( data, " \!t\!n\!r," );
//keep only unique entries
myArray_set = Associative Array( testList_raw );
unique_myArray = myArray_set << Get Keys;
//replace special characters
Python Init();
Python Send( unique_myArray );
Python Submit(
"\[
myList =unique_myArray
myOutput = ','.join(myList)
myOutput = myOutput.replace("[","\\[")
myOutput = myOutput.replace("]","\\]")
myOutput = myOutput.replace(",","|")
]\"
);
Wait( 0 );
//output to window's clipboard
myClipboard = Python Get( myOutput );
Set Clipboard( myClipboard );
問候,
Damien RAMIS - 恩智浦
回复:直接在列對話框過濾器中粘貼多個列名了解列名列表的來源和您的使用/期望可能會很有用:
- 列表是否為逗號分隔的字符串(假設列名中沒有逗號?
- 每個名字都會有雙引號嗎?
- 列表會用大括號括起來嗎?
- 列表來源是來自某個 JMP 表的用戶選擇還是來自電子郵件或其他外部文檔等外部來源?
- 名稱是否完美匹配,是否區分大小寫?
根據經驗,有關範圍和用法的更多詳細信息有助於 JMP 開發人員確定您的請求的大小和重要性。
回覆:在列對話框過濾器中直接貼上多個列名@damien :僅供參考,在 JMP v18 中實際上有一種方法可以做到這一點,但在 JMP v19 中丟失了: https://community.jmp.com/t5/JMP-Wish-List/Restore-data-grid-behavior-Pasting-onto-column-namesidi-p-rename/grid-behavior-Pasting-onto-column-namesidi-p-rename/grid-p03/8430
回覆:在列對話框過濾器中直接貼上多個列名@BHarris ,這個願望是關於過濾器的,而不是改變列名。
回覆:直接在列對話框篩選器中貼上多個列名JMP19 幾乎現已推出:
如果啟用「包含術語」選項,並且不啟用「匹配所有術語」設置,則列篩選器現在提供了選擇任何匹配列所需的邏輯:)
但這項新功能的實用性遠不如預期:
大多數情況下,列名會連同換行符號一起複製到剪貼簿,例如從另一個列列表中複製——所以「貼上列名」仍然不起作用 

回覆:直接在列對話框篩選器中貼上多個列名目前,用戶需要手動將換行符號替換為空格。
應該很容易修復:
將剪貼簿內容貼到列篩選器? -> 自動將換行符號替換為空格。
我認為目前沒有用戶需要這項功能:
保留第一行,刪除其他行。