LevenshteinDist() iki dize arasında Levenshtein mesafesi döndürür. Bu, bir dizeyi diğeriyle değiştirmek için gereken minimum tek karakterli düzenleme (ekleme, silme veya değiştirme) sayısı olarak tanımlanır.
Fonksiyon, fuzzy dize karşılaştırmaları için kullanışlıdır.
Söz Dizimi:
LevenshteinDist(text1, text2)
Dönüş verileri türü: tamsayı
Bağımsız Değişkenler
Bağımsız Değişken
Tanım
text1
İlk dize.
text2
Minimum tek karakterli düzenleme sayısını hesaplamak için ilk dizeyle karşılaştırılacak olan ikinci dize.
Örnek: Grafik ifadesi
Örnek
Sonuç
LevenshteinDist( 'Kitten','Sitting' )
3 döndürür
Örnek - LevenshteinDist temel bilgileri
Genel bakış
Veri yükleme düzenleyicisini açın ve aşağıdaki yükleme kodunu yeni bir sekmeye ekleyin.
Yükleme kodu şunları içerir:
Example adlı veri tablosuna yüklenen bir veri kümesi.
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanı boyut olarak ekleyin:
InputText
Şu hesaplamayı oluşturun:
=LevenshteinDist('Silver', InputText), InputText dize değerini Silver kelimesine değiştirmek üzere gereken minimum tek karakter düzenleme sayısını hesaplamak için.
Sonuçlar tablosu
InputText
LevenshteinDist('Silver', InputText)
Sliver
2
SSiveer
3
SSiver
2
LevenshteinDist işlevinin çıktısı, InputText metnini beklenen metin olan Silver metnine dönüştürmek için gereken değişiklik sayısını verir. Örneğin, ilk satırda Sliver kelimesini Silver olarak değiştirmek için iki değişiklik yapılması gerekmektedir. İkinci satır 3 değişiklik gerektirir: 1) Fazla S karakterini silin. 2) Fazla e karakterini silin. 3) Yeni bir l karakteri ekleyin.
Örnek - LevenshteinDist senaryosu
Genel bakış
Bu örnek, farklı sistemlerdeki ürün adlarını birleştirir. Yazım hataları, kısaltmalar, boşluklar veya diğer varyasyonlar nedeniyle ürün adları her zaman aynı şekilde yazılmaz. LevenshteinDist işlevini kullanarak, iki ürün adı arasındaki benzerliği ölçebilir ve adlar aynı olmasa bile hangilerinin muhtemelen aynı ürüne referans verdiğini belirleyebilirsiniz.
Veri yükleme düzenleyicisini açın ve aşağıdaki yükleme kodunu yeni bir sekmeye ekleyin.
Yükleme kodu şunları içerir:
Example adlı veri tablosuna yüklenen bir veri kümesi.
Veri tablosundaki şu alanlar:
ProductA
ProductB
Komut dosyası
Example:
Load * inline [
ProductA, ProductB
Coca Cola 330ml, CocaCola 330 ml
Pepsi 500 ml, Pepsi 500ml
Sprite Zero 600 ml, SpriteZero600ml
Red Bull 250ml, Redbull 250ml
];
Sonuçlar
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
ProductA
ProductB
Şu hesaplamayı oluşturun:
=LevenshteinDist(ProductA, ProductB), ProductB dize değerini ProductA ile eşleştirmek üzere gereken minimum tek karakter düzenleme sayısını hesaplamak için.
Sonuçlar tablosu
ProductA
ProductB
LevenshteinDist(ProductA, ProductB)
Coca Cola 330ml
CocaCola 330 ml
2
Pepsi 500 ml
Pepsi 500ml
1
Red Bull 250ml
Redbull 250ml
2
Sprite Zero 600 ml
SpriteZero600ml
3
Levenshtein mesafesi, metinde küçük değişikliklerin sıklıkla meydana geldiği müşteri veri yönetimi, envanter sistemleri ve belge işleme gibi alanlarda yazım denetleyicileri, optik karakter tanıma ve düzeltme sistemlerinin bir parçası olarak yaygın şekilde kullanılan bir fuzzy eşleştirme türüdür.
Komut dosyası
Example:
Load *, recno() as ID;
Load 'Silver' as String_1,* inline [
String_2
Sliver
SSiver
SSiveer ];
Example:
Load *, recno()+3 as ID;
Load 'Gold' as String_1,* inline [
String_2
Bold
Bool
Bond ];
Example:
Load *, recno()+6 as ID;
Load 'Ove' as String_1,* inline [
String_2
Ove
Uve
Üve ];
Example:
Load *, recno()+9 as ID;
Load 'ABC' as String_1,* inline [
String_2
DEFG
abc
ビビビ ];
set nullinterpret = '<NULL>';
Example:
Load *, recno()+12 as ID;
Load 'X' as String_1,* inline [
String_2
''
<NULL>
1 ];
R1:
Load
ID,
String_1,
String_2,
LevenshteinDist(String_1, String_2) as LevenshteinDistance
resident Example;
Drop table Example;
Sonuçlar tablosu
Kimlik
Dize_1
Dize_2
LevenshteinDistance
1
Silver
Sliver
2
2
Silver
SSiver
2
3
Silver
SSiveer
3
4
Gold
Kalın
1
5
Gold
Bool
3
6
Gold
Bond
2
7
Ove
Ove
0
8
Ove
Uve
1
9
Ove
Üve
1
10
abc
DEFG
4
11
abc
abc
3
12
abc
ビビビ
3
13
X
1
14
X
-
1
15
X
1
1
Bu sayfa size yardımcı oldu mu?
Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız, bize bildirin, düzeltelim!