JMP-Tools 插件概述 - 由 jthi 編寫的 JMP 插件我現在已經發布了一些我為 JMP 編寫的插件。 代碼和插件(有些是加密的)可以從這個 GitHub 頁面找到jthi-jmp-tools (github.com)概述可以從jthi-jmp-tools / JMP-Tools (github.com)存儲庫。 如果您對這些加載項有建議,您可以:
- 評論這篇文章
- 在正確的 GitHub 存儲庫中打開與該插件或通用插件相關的問題
- 如果我在此處發布了插件,請在 JMP 社區插件頁面上發表評論
- 在 JMP 社區中發送私信
開發這些工具的目的是提供新工具,增強 JMP 已有的工具,主要是提高我的腳本技能,同時編寫一些有趣的代碼。 所有插件都可以從jthi-jmp-tools/JMP-Tools/releases (github.com)你應該可以從那裡下載和安裝它們。 有些也可以從 JMP 社區找到。 插件確實包含一些獨立的功能,您可以通過包含正確的腳本/將它們複製到您的代碼中來在您自己的腳本中使用,所以如果您對此感興趣,我建議您查看源代碼。
加載項的結構是我很久以前關於如何構建它們的一些基本想法,因此它們具有大部分相同的目錄結構和一些通用文件。 例如,一些可以保存的設置已經保存到 settings.json 文件中。 通過使用將加載項放在一起加載項管理器因為它比 JMP 提供的本地工具更容易管理多個插件。
大多數插件將添加到 JMP-Tools 下的插件菜單中:

還有一個工具欄插件。 這可以從“main-repositorys”發布頁面找到。 如果您安裝了此處描述的(全部/大多數)插件,則非常有用。

下面是我創建的插件的快速概述,請注意,有一對夫婦正在進行大量工作。 可以從社區找到的腳本應該在標題中有這個“書”鏈接
.
想法是為用戶提供快速匯總統計信息和他們可以在列上執行的快速操作。 這可以用作您在獲得新數據集時運行的第一個工具,以獲取您正在使用的數據的概述(部分靈感來自熊貓分析(github.com) )。

有時,您會遇到編碼錯誤且數據類型錯誤的數據。 在 JMP 中,當您將數據類型從字符更改為數字時,由於轉換的工作方式,您可能很容易最終丟失一些數據。 此工具的目的是將選定的字符列(可以安全地轉換)轉換為數字列。該工具獲取列中的值,然後檢查它們是否可以轉換為數字。 如果所有這些(或足夠多的)都可以轉換,它會將數據類型更改為數字。 它允許您選擇要轉換的列,允許使用轉換閾值和採樣率。

此工具將使用當前行號為數據表創建排序列。 當您開始分析並想要對數據進行排序但仍有可能回滾到原始順序時,這很有用。 該列將在數據表的開頭創建,如果創建了多個排序列,則會添加索引。

我還創建了願望清單項目,希望可以直接從 JMP 找到一些類似的東西(對於已經存在的列,但對於行不存在)在打開/創建時將原始訂單屬性/列添加到 JMP 數據表
該工具允許用戶輕鬆刪除缺失值超過指定數量(閾值)的多個列。

此工具允許用戶根據上一個/下一個/最近找到的值填充缺失值。已經有工具可以以某種方式執行此操作(甚至 JMP 也有填充行),但我使用/看到的那些在至少這個加載項你要做的分組選項,如果你使用 Order 列,這也不應該要求你對數據表進行排序。

該工具的目的是為用戶界面提供從選定數據表中以不同格式從選定列(名義、序數)中列出的唯一值。 從此列表中,用戶可以直接將值複製粘貼到剪貼板或使用特定按鈕進行複制。
工具還提供了將值直接粘貼到框並獲取不同格式的值的選項。 例如,當您從 excel 複製粘貼值時,這很方便。 您還可以將剪貼板中的值直接格式化為 SQL 列表。

此插件的目的是為用戶提供一種方法,以與 SQL 的 listagg 類似的方式創建具有分組值列的新表。 在最佳情況下,此選項會出現在 JMP 的摘要和拆分平台中,因為我有時希望保留一些值,即使我使用摘要進行拆分或聚合。

我已經為這兩個創建了願望清單項目允許拆分創建多個響應列和將 Listagg/Concatenate/GROUP_CONCAT 添加到匯總平台桌子。
連接兩個具有連續列的數據表。 可以向後、向前、最近/最近加入。 支持使用公差/最大距離來連接和使用分組列。 不必對數據進行排序,但它確實加快了工具的執行速度。 部分靈感來自Python Pandas - 合併 Asof

我創建了與此部分鏈接的願望清單項目添加模糊連接/asof 合併/按不完全匹配的列連接
從 JMP 的 Cols/Reorder Columns 菜單中找到的大多數列排序選項不提供僅對選定列進行排序的可能性。 此插件為 JMP 用戶提供這些選項。

有一個與此相關的願望清單項目(這就是我編寫此插件的原因)列重新排序 > 按名稱/數據類型/角色排序 > 僅選定列
10. 將 X 替換為 Y (替換-x-with-y (github.com) )
用選定列中的其他值替換完全匹配。

此工具的目的是讓 JMP 用戶在數據格式正確的情況下直接從原始數據拆分長(堆疊)數據並設置規格限制。

提供對用戶定義腳本的快速訪問的工具(為 jthi-jmp-tools 預配置)。 還提供對啟動腳本、修改其 settings.json 文件和打開目錄的訪問權限。 還允許更改當前數據表。
Strongy 建議添加為易於訪問的快捷方式,例如我的是 Ctrl+Shift+Z。 如果腳本已經打開,再次啟動它會將其置於最前面。

這仍在進行中,但其想法是提供用戶指定目錄的文件列表並允許打開文件/目錄。

現在就是這樣,我會嘗試在某個時候完成仍然嚴重未完成的加載項並修復我遇到的錯誤。 可以在 GitHub 上找到大多數最新版本的加載項。
數據表腳本視窗回复:JMP-Tools 插件概述 - jthi 編寫的 JMP 插件5號!!!!!!!回复:JMP-Tools 插件概述 - jthi 編寫的 JMP 插件隨意下載它填充缺失的單元格並安裝插件並試用。
一些類似的事情可以直接在 JMP 中使用 Fill 完成:

與數據表工具插件. 我編寫的插件確實有一些額外的好處,例如對列進行分組,並且如果您有一些用於排序的列,則不需要您對數據表進行排序(如果沒有提供排序列,它將使用行順序)。
回复:JMP-Tools 插件概述 - jthi 編寫的 JMP 插件感謝 JTHI 提供了這麼多高效的工具。
有沒有可能做一個可以快速將Excel的VBA轉JSL的插件?
謝謝!
回复:JMP-Tools 插件概述 - jthi 編寫的 JMP 插件VBA 可以做很多事情,它可以用很多不同的方式編寫,我認為使用“簡單”插件將 VBA 直接轉換為 JSL 是不可行的。 對於一些簡單的情況,可以進行轉換,否則必須逐個進行。 您還可以使用 JMP 通過 Run Program() 運行 excel 宏。
回复:JMP-Tools 插件概述 - jthi 編寫的 JMP 插件使用 EmEditor 的替換功能快速將瀏覽器副本轉換為 JSL 代碼
CURL(CMD)是從瀏覽器F12複製過來的,用EmEditor替換功能快速轉換成JSL代碼。
當然,這個過程也應該用 JSL 來實現。

捲曲(cmd)
curl "http://excalc" -H "Connection: keep-alive" -H "Origin: http://excalc.icfqs.com:7616" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36" -H "Content-Type: text/plain" -H "Accept: */*" -H "Referer: http://excalc.icfqs.com:7616/site/tdx-zbfx/page-ddlj.html?setcode=1^&code=xxxxxx^&name=ssssss^&color=0" -H "Accept-Encoding: gzip, deflate" -H "Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,zh-TW;q=0.7" -H "Cookie: ASPSessionID=" --data-binary "^[^{^\^"funcId^\^":2,^\^"offset^\^":0,^\^"count^\^":200,^\^"cond^\^":^\^"time,11700,33600^|amount,14^\^",^\^"modname^\^":^\^"TickAly^\^"^}^]" --compressed --insecure
EmEditor
document.selection.Replace("\\r","\\n",eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
document.selection.Replace("\\n\\n","\\n",eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
document.selection.Replace(" -H ","\\n",eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
document.selection.Replace("curl \"(.{0,})$","u=\"\\1;h=[=>];//h[\"Content-Type\"]=\"application/json\";",eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
document.selection.Replace(" --compressed","\\n--compressed",eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
document.selection.Replace(" --data(.[^\"]{0,})(.{0,})$","\\njj=\\2;",eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
//document.selection.Replace("\"cookie: (.{0,})$","h[\"cookie\"]=\"\\1;",eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
document.selection.Replace("\"cookie: (.{0,})$","h[\"cookie\"]=\"\\1;\\nzzzrs=New HTTP Request(URL(u),Method(\"GET\"),Headers(h));//rs=New HTTP Request(URL(u),Method(\"POST\"),JSON(jj),Headers(h));\\nr=rs<<SEND></SEND>JSL(未完成)
u="http://excalc";h=[=>];//h["Content-Type"]="application/json";
//h["User-Agent"]="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36";
//h["ac"]="*/*";
h["cookie"]="ASPSessionID=";
rs=New HTTP Request(URL(u),Method("GET"),Headers(h));//rs=New HTTP Request(URL(u),Method("POST"),JSON(jj),Headers(h));
r=rs<<SEND></SEND>
回复:JMP-Tools 插件概述 - jthi 編寫的 JMP 插件是的,自動將所有 VBA 轉換為 JSL 工作量太大。不現實。
我想看看VBA關於從網頁下載數據是否可以自動將核心語法轉換為JSL並保留VBA使用的變量。
謝謝jthi!