如何識別與我的參考詞有 2 個以上字符不同的詞(使用列中的公式)?大家好,
我有一列由具有不同字符組合的單詞組成(即 AAAAAAAAAA - 10 個字符的單詞)。 我想在相鄰列中識別出超過 2 個不同字符的單詞(即 A乙AAAA行政長官AA)。 字母不同的位置無關緊要,另外,有些詞也可以比我的參考詞短或長。
因此,我想實現一個公式,使我能夠區分/識別與我的參考序列有少於/多於 2 個不同字符並且長度相同的單詞。 我仍然是 JMP 的初學者,不知道這是否可以實現。 如果您有任何建議,請告訴我:)
數據表回复:我如何識別與我的參考詞有超過 2 個字符的單詞(使用列中的公式)?看看附表,它應該讓你開始。 它的核心是一個公式列(稱為“決策”,在表格的列面板中用“+”號表示。 單擊“+”給出:

您需要一些 JSL 知識才能理解這一點,如果需要,可以使用“幫助 > 腳本索引”來準確了解它是如何工作的。
回复:我如何識別與我的參考詞有超過 2 個字符的單詞(使用列中的公式)?很多方法可以做到這一點。 這是另一種選擇:
Names Default To Here(1);
/*
a = "ABAAAACEAA";
b = "AAAAAAAAAA";
Show(!IsMissing(Substitute(a, Left(a,1), "")));
Show(!IsMissing(Substitute(b, Left(b,1), "")));
*/
New Table("Untitled 2",
Add Rows(3),
New Column("Column 1", Character, "Nominal", Set Values({"ABAAAACEAA", "AAAAAAAAAA", "BBBBAAA"})),
New Column("Column 2",
Numeric,
"Continuous",
Format("Best", 12),
Formula(!Is Missing(Substitute(:Column 1, Left(:Column 1, 1), "")))
)
);
Column1 是包含字符的列
Formula(!Is Missing(Substitute(:Column 1, Left(:Column 1, 1), "")))
在這個簡單的示例中,想法是替換從第一個位置找到的字符串中的所有值,如果還有一些字符,我們就知道字符串中有超過 1 個字符。 如果您有多個值要替換,您應該能夠通過修改 Substitute 函數參數來使用相同的想法
回复:我如何識別與我的參考詞有超過 2 個字符的單詞(使用列中的公式)?嗨,伊恩,
感謝您的反饋。 我試圖實現你寫的公式,但我不知道在哪裡可以定義我的參考序列是 AAAAAAA 而不是別的。 我將項目選擇中的“”替換為“AAAAAAA”,但結果不正確。 有什麼建議可以升級你寫的公式嗎?
回复:我如何識別與我的參考詞有超過 2 個字符的單詞(使用列中的公式)?嗨,Jthi,感謝您的建議。
老實說,我仍在嘗試理解公式:')。 在我正在處理的文件中,我只有一個參考詞,而且我必須使用位置/字母的每種可能組合篩選超過一百萬行條目。 我假設這個公式不起作用,因為我無法在公式中定義這些值。 考慮到大型數據庫 Ive 是否可以對其進行調整?
回复:我如何識別與我的參考詞有超過 2 個字符的單詞(使用列中的公式)?看來我誤解了你所說的“我想在相鄰列中識別出超過 2 個不同字符的單詞”。 我的建議是標記源列中每個單元格包含一個字符串的行,該字符串本身由兩個以上不同的字符組成(因此沒有參考序列或字符串)。
回复:我如何識別與我的參考詞有超過 2 個字符的單詞(使用列中的公式)?我們需要更多的例子。 差異的數量是多少(不要過度指定,指出它不重要的地方。)
ref = "AEIOUA" // 試圖理解重複字母的規則
test = "AEIOUA" // nDiff = 0 表示相同的字符串
測試 = "AAEIOU" // nDiff = ?對於相同的字母,重新排序
測試 = "AEIOU" // nDiff = ?對於相同的字母,右側缺少一個
測試 = "EIOUA" // nDiff = ?對於相同的字母,左側缺少一個
測試 = "EIOU" // nDiff = ?
測試 = "AA" // dDiff = ?
test = "AXA" // dDiff = ?
test = "AXXXXA" // dDiff = ?用於匹配長度
測試 = "AEIUOA" // dDiff = ?用於交換內部字母
測試 = "AEIOUEIOU" // nDiff = ?對於重複的字母
這些答案將有助於選擇算法:
你說了~1e6個測試詞;你在看多少個參考詞?
除了“是/否有超過 2 個差異”之外,您還需要其他答案嗎? 差異計數會有用嗎?