Erstellt eine Begriffsindextabelle für signifikante Begriffe. Diese Aktion wird typischerweise nach der Aktion `significantTerms` verwendet, um die resultierenden signifikanten Begriffe zu indizieren und so die Suchleistung und die Analysefähigkeiten zu verbessern.
| Parameter | Beschreibung |
|---|---|
| casOut | Gibt die Ausgabetabelle an, in der die Begriffsliste gespeichert werden soll. |
| fields | Gibt eine Liste von Feldern an, in denen die Worthäufigkeit gezählt werden soll. Dies ist ein optionaler Parameter. |
| language | Gibt die Sprache an, die für den Tokenizer des Indexfeldes verwendet werden soll. Standard ist 'UNIVERSAL'. |
| table | Gibt den Namen der Eingabe-Indextabelle an, die verwendet wird, um Begriffe in die Aktion buildTermIndex einzuspeisen. |
| tokenize | Gibt an, ob das Indexfeld tokenisiert wird. Standard ist FALSE. |
Erstellen einer Beispieltabelle `mycas.reviews` mit Produktbewertungen, die als Eingabe für die nachfolgenden Aktionen dient.
| 1 | DATA mycas.reviews; |
| 2 | INFILE DATALINES delimiter='|'; |
| 3 | LENGTH text $500 doc_id $10; |
| 4 | INPUT doc_id $ text $; |
| 5 | DATALINES; |
| 6 | 1|Das ist ein tolles Produkt, sehr zu empfehlen. |
| 7 | 2|Ich bin nicht zufrieden, das Produkt war defekt. |
| 8 | 3|Guter Preis, aber die Qualität könnte besser sein. |
| 9 | 4|Fantastisch! Das beste Produkt, das ich je hatte. |
| 10 | 5|Ein solides Produkt für den täglichen Gebrauch. |
| 11 | ; |
| 12 | RUN; |
Dieses Beispiel extrahiert zuerst signifikante Begriffe aus der Tabelle `reviews` und erstellt dann einen Begriffsindex für diese Begriffe. Dies ist der Standardanwendungsfall.
| 1 | PROC CAS; |
| 2 | searchAnalytics.significantTerms / |
| 3 | TABLE={name='reviews', vars={'text'}} |
| 4 | docId='doc_id' |
| 5 | casOut={name='significant_terms', replace=true}; |
| 6 | RUN; |
| 7 | searchAnalytics.buildTermIndex / |
| 8 | TABLE={name='significant_terms'} |
| 9 | casOut={name='term_index', replace=true}; |
| 10 | RUN; |
| 11 | QUIT; |
Dieses Beispiel zeigt die Verwendung der Parameter `tokenize` und `language`. Wenn `tokenize` auf TRUE gesetzt ist, wird das Feld `_term_` aus der Eingabetabelle `significant_terms` tokenisiert, bevor der Index erstellt wird. Dies ist nützlich, wenn die signifikanten Begriffe Phrasen sind und man nach einzelnen Wörtern innerhalb dieser Phrasen suchen möchte. Die Sprache wird auf Deutsch gesetzt, um eine korrekte linguistische Verarbeitung sicherzustellen.
| 1 | PROC CAS; |
| 2 | searchAnalytics.significantTerms / |
| 3 | TABLE={name='reviews', vars={'text'}} |
| 4 | docId='doc_id' |
| 5 | casOut={name='significant_terms_phrases', replace=true}; |
| 6 | RUN; |
| 7 | searchAnalytics.buildTermIndex / |
| 8 | TABLE={name='significant_terms_phrases'} |
| 9 | casOut={name='term_index_tokenized', replace=true} |
| 10 | tokenize=true |
| 11 | language='GERMAN'; |
| 12 | RUN; |
| 13 | QUIT; |
Ein E-Commerce-Unternehmen möchte das Kundenfeedback zu seinen Produkten analysieren. Das Ziel ist es, aus den Freitext-Rezensionen einen durchsuchbaren Index zu erstellen, um s...
Eine Nachrichtenagentur archiviert täglich Tausende von Artikeln. Um das Archiv effizient durchsuchbar zu machen, muss ein Index erstellt werden. Da es sich um deutsche Texte ha...
Ein IT-Sicherheitsteam analysiert Server-Logs auf Anomalien. Die Log-Einträge enthalten oft zusammengesetzte technische Zeichenfolgen (z.B. 'Error_404', 'Connection-Refused'). U...