Mamy listę słów kluczowych powiązanych z listą dokumentów. Lista została utworzona z liczenia częstotliwości słów w tekście dokumentu. Próbujemy dodać wagę do słów kluczowych na podstawie tego, czy pojawiają się one w nazwie dokumentu, czy nie. Na przykład, gdybyśmy mieli dokument o nazwie Agency_Solutions.doc
, słowo kluczowe agency
sortowałoby się wyżej na liście niż telephone
.
Sprawę komplikuje fakt, każdy dokument ma albo the
, a
, an
jak to top słów kluczowych, na podstawie morfologii. Oczywiście wszystko, co należy wykluczyć; Utworzyłem VLOOKUP
kolumnę zawierającą 171 „wspólnych” słów do wykluczenia.
Oto mój problem: jeśli ja MATCH(WORD,TITLE,0)
, Agency
nie równa się Agency_Solutions
(lub Agency Solutions
, użyłem SUBSTITUTE
do stworzenia „czystych” wersje wszystkich tytułów) i nie dostać ważona. Jeśli SEARCH(WORD,TITLE)
ważę, a
bo a
pojawia się w Agency_Solutions
. FIND
zwróci identyczne wyniki SEARCH
w tym przypadku. Skała. Trudne miejsce
Próbowałem kilku iteracji rzeczy, ale nigdy nie otrzymuję wyników identyfikujących słowo kluczowe jako samodzielny podciąg w nazwie dokumentu. Jakieś pomysły?
EDYCJA: Oto niektóre dane
Lista wykluczeń (wklej do kolumny A)
a
an
is
the
what
when
who
Dokument, słowo kluczowe, liczba (Cols B, C i D)
Keyboard_and_mouse_problems.txt the 15
Keyboard_and_mouse_problems.txt an 15
Keyboard_and_mouse_problems.txt a 14
Keyboard_and_mouse_problems.txt when 12
Keyboard_and_mouse_problems.txt system 8
Keyboard_and_mouse_problems.txt keyboard 8
Keyboard_and_mouse_problems.txt mouse 8
Keyboard_and_mouse_problems.txt when 9
Keyboard_and_mouse_problems.txt what 9
Keyboard_and_mouse_problems.txt who 8
Keyboard_and_mouse_problems.txt is 8
Keyboard_and_mouse_problems.txt phone 6
Keyboard_and_mouse_problems.txt help 6
Keyboard_and_mouse_problems.txt desk 5
Keyboard_and_mouse_problems.txt cable 4
Keyboard_and_mouse_problems.txt jack 4
Agency_Solutions.txt X 2
Agency_Solutions.txt c 1
Agency_Solutions.txt on 1
Następnie moje formuły:
Col E =IFERROR(VLOOKUP(C2,$A$2:$A$225,1,0),"notFound") Is this in the exclusion list?
Col F =IFERROR(VLOOKUP(C2,$A$2:$A$225,1,0),"") Exclude this word
Col G =IF(F2=C2,0,C2) Include this word
Col H =IF(ISNUMBER(SEARCH(C2,B2)),100,0) Title Weight
Col I =IF(G2=0,0,D2+H2) Weighted Keywords
Col J =IF(AND(H2=100,G2=0),"BAD","OK") OK or Bad calculations
źródło
Agency
a TYTUŁ toAgency appleton
pierwsza formuła zwraca PRAWDA, ale z tym samym TYTUŁEM, za który otrzymałeś FAŁSZ,apple
ponieważ nie jest to pełne dopasowanieTrzeba spróbować, aby
VLOOKUP
z symboli wieloznacznych, np jeśli mamyapple
wA1
,=VLOOKUP("*"&A1&"*";B:C;2;0)
pasuje dowolny ciąg, który maapple
niezależnie od pozycji. Zobacz więcej mojej innej odpowiedzi: https://superuser.com/a/552742/187330Wskazówka: aby uniknąć rozróżniania wielkości liter, użyj
LOWER
funkcji porównania.źródło
VLOOKUP
się z wszechświatem zgodnie z postem, o którym wspomniałeś powyżej. Mój problem polega teraz na tym, jak uwzględnićapple
, WYŁĄCZNIEappleton
. ... Lub, jak wykluczyćapple
, WŁĄCZNIEappleton
. Nie jestem pewien, czy mogę to zrobić w tej samej funkcji.OK
lubBAD