1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Dolování textu metodou Bag-of-Words v R

Connected

Cvičení

Aplikuj předpracování na korpus

Balíček tm nabízí funkci tm_map(), která umožňuje aplikovat čisticí funkce na celý korpus najednou – celý proces tím výrazně zjednodušuje.

tm_map() přijímá dva argumenty: korpus a čisticí funkci. Funkce removeNumbers() pochází přímo z balíčku tm.

corpus <- tm_map(corpus, removeNumbers)

Kvůli kompatibilitě je potřeba funkce ze základního R a z balíčku qdap obalit pomocí content_transformer().

corpus <- tm_map(corpus, content_transformer(replace_abbreviation))

Pokud stejné funkce aplikuješ na více korpusů, ušetříš si čas (i řádky kódu) tím, že si napíšeš vlastní funkci – například takovou, jakou vidíš v editoru. Funkce clean_corpus() přijímá jeden argument, corpus, postupně na něj aplikuje sérii čisticích funkcí a vrátí upravený korpus.

Na pořadí čisticích kroků záleží. Pokud například nejdřív použiješ removeNumbers() a pak replace_number(), druhá funkce už nebude mít co upravovat! Výsledky vždy pečlivě zkontroluj!

Pokyny 1/2

undefined XP
    1
    2
  • Uprav vlastní funkci clean_corpus() v ukázkovém kódu tak, aby aplikovala (v tomto pořadí):
    • removePunctuation() z balíčku tm.
    • tolower() ze základního R.
    • Přidání "mug" do seznamu stop slov.
    • stripWhitespace() z balíčku tm.