如何掃描一列中的文本,並將關鍵術語放入另一列中?大家好!
這是我在這個論壇上的第一篇文章,如果格式不正確,我深表歉意。 我正在編寫一個新腳本來分析 12 個實驗堆疊的數據集。 我需要從“批次 ID”列中取出一些關鍵短語,並使用公式/腳本(最好是公式)將它們組織到其他列中。 因此,在這種情況下,我需要“B01”短語進入與包含該短語的批次 ID 同一行的生物反應器列,“VBTS-935”對菌株列執行相同操作,並需要日期執行相同操作與日期列。 這就是我們當前文本數據的格式,但如果有人對如何重新格式化以便於分析有建議,請告訴我!
感謝您提前提供的幫助。
自動化和腳本編寫內容組織回复:如何掃描一列中的文本,並將關鍵術語放入另一列中?你好@BunnyBoi12 ,
我建議將公式添加到最後 3 列中。 以下是您可以研究的一些示例。
生物反應器:word(2,:批次ID,“:”)
Strain: word(2, :Batch ID, ", ") // 請注意,引號中也有一個空格!
日期: word(3, :批次 ID, ", : ")
關於日期列的附加說明,您可以將 word() 函數包裝在 format() 函數中,並根據需要格式化日期。
幫助 > 腳本索引也是探索可能對您有益的功能的絕佳資源!
回复:如何掃描一列中的文本,並將關鍵術語放入另一列中?關於如何執行此操作,有很多選項(word() 和 Words() 是您可以使用的幾個函數,如果您熟悉正則表達式,則可以使用 Regex())。
我還建議的一件事是探索重新編碼(右鍵單擊列標題)

例如它有提取片段選項(以及更多)


拆分列後,您應該能夠從增強日誌中獲取腳本

文本到列可能會幫助您將大問題分解為幾個小問題。

此外,當您向 JMP 社區發布問題時,如果您可以提供某種類型的數據(如果可以共享,則為模擬數據或真實數據)並包含至少幾行所需的結果列,這通常是一個好主意。在測試不同的解決方案時提供幫助。
回复:如何掃描一列中的文本,並將關鍵術語放入另一列中?太棒了,謝謝你! 在這些用途中,我肯定會更頻繁地使用重新編碼選項。
回复:如何掃描一列中的文本,並將關鍵術語放入另一列中?您介意解釋一下“2”和“3”的含義嗎? 你的公式很有魅力,但當涉及到公式上下文時,JMP 給出的解釋讓我無法理解,我想確保我能教我團隊的其他成員如何正確使用它
回复:如何掃描一列中的文本,並將關鍵術語放入另一列中?假設我們有一個字符串:
mystr = "my,name,is,starfruitbob"
word( <此處的數字>, <我正在處理的內容>, <所有分隔符,採用字符串格式> )
在我看來,最好了解其中每一個的作用稍微有些混亂:
- <我正在處理的內容>:例如,這可以是字符串變量或列。 這是輸入。 必須是字符類型。
- :“在這裡串東西!” <-- 將您想要的所有分隔符放在這裡。 每個其中,即使您在其中放置了空格,它們也將單獨用作分隔符!
- <此處的數字>:根據您如何分隔輸入,它將被分成不同的“塊”。 該數字是您要返回的“塊”。
讓我們看一個例子:
mystr = "my,name,is,starfruitbob";
// Note where the commas are in the variable above
print( word( 1, mystr, "," ) ); // Returns: my
print( word( 3, mystr, "," ) ); // Returns: is
// If the delimiter is changed...
print( word( 1, mystr, "s" ) ); // Returns: my,name,i
// This is because it will return the first characters BEFORE the new delimiter "s"
print( word( 2, mystr, "s" ) ); // Returns: ,
// There's only a single comma between the two "s" delimiters, and is the second "chunk" of the input
這有幫助嗎@BunnyBoi12
回复:如何掃描一列中的文本,並將關鍵術語放入另一列中?我想是這樣。 所以如果你這樣做了
打印(字(3,mystr,“s”));它會返回“tarfruitbob”?
回复:如何掃描一列中的文本,並將關鍵術語放入另一列中?確切地。 
回复:如何掃描一列中的文本,並將關鍵術語放入另一列中?你真是太棒了,我希望你有美好的一天