Farklı yöntemleri denemek
Harika, artık metin uzaklığını hesaplamak için birden fazla yöntemi öğrendin. Hangi yöntemin kullanılacağı pek çok duruma bağlıdır; bu yüzden farklı yöntemleri ve parametrelerini biraz kurcalayıp tanımak iyi bir fikirdir. Bu egzersizde arama terimi olarak "Marya Carey" kullanacaksın — "Mariah Carey" adının hatalı yazılmış bir hâli. Farklı metin uzaklığı yöntemleriyle bu hatalı yazım, gerçek isme ne kadar benziyor?
Amacın, yukarıda bahsedilen iki isim arasında düşük bir uzaklık verirken, listede aranan kişi olmayan diğer isimlerle arasındaki uzaklığın büyük kalmasını sağlayacak parametreleri bulmak.
Bu egzersiz
R ile Orta Düzey Düzenli İfadeler
kursunun bir parçasıdırEgzersiz talimatları
- Alt dize uzunluğu
1ve2için q-gramları üret. searchvenamesarasındaki metin uzaklığını, alt dize uzunluğu1ve2için q-gram yöntemini kullanarak hesapla.searchvenamesarasındaki metin uzaklığını"osa"yöntemini kullanarak hesapla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
search <- "Mariah Carey"
names <- c("M. Carey", "Mick Jagger", "Michael Jackson")
# Pass the values 1 and 2 as "q" and inspect the qgrams
qgrams("Mariah Carey", "M. Carey", q = ___)
qgrams("Mariah Carey", "M. Carey", q = ___)
# Try the qgram method on the variables search and names
stringdist(___, ___, method = "___", q = 1)
stringdist(___, ___, method = "___", q = 2)
# Try the default method (osa) on the same input and compare
stringdist(___, ___, method = "___")