Skip to contents

Cleans text stored in a data frame. Function is tailored for German texts.

Usage

clean_text(
  df,
  text_field = "text",
  clean_field = "text",
  tolower = T,
  remove_punct = T,
  simplify_punct = F,
  replace_emojis = T,
  replace_numbers = T,
  remove_stopwords = F,
  store_uncleaned = T,
  count = T
)

Arguments

df

A data frame.

text_field

character. Default is 'text'. Name of a column in df that contains text that should be cleaned. Default is 'text'.

clean_field

character. Default is 'text'. Name given to a new column in df that will contain the cleaned text.

tolower

logical. Lowercase text? Default is TRUE.

remove_punct

logical. Remove punctuation? Default TRUE.

simplify_punct

logical. Replace all !, :, ?, ... by a single . Default FALSE.

replace_emojis

logical. Replace a list of emojis by German words for certain emotions ('wut', 'angst', 'freude'). Default TRUE.

replace_numbers

logical. Replace numbers by German words for those numbers. Default TRUE.

remove_stopwords

logical. Remove German stopwords from the 'nltk' list with the exception of some words defined by the author. Default FALSE.

store_uncleaned

logical. Save uncleaned text as 'uncleaned_text' column? Default TRUE.

count

logical. Count number of words and strings after cleaning? Will create the columns 'n_words' and 'n_chars'. Default TRUE.

Value

A data.frame with the same columns as the df. The cleaned text is in the column specified by text_field or, if not specified in 'text.

Examples

tw_data %<>% head(10) %>% clean_text(text_field = 'full_text')
tw_data$text
#>  [1] "es geht bei dieser richtungswahl um die frage bleiben wir auf einem kurs der mitte und der stabilität oder bekommen wir ein rot grün rotes abenteuer mit unabsehbaren konsequenzen für arbeitsplätze den wohlstand unseres landes und die zukunft unserer kinder tm merzmail"      
#>  [2] "aus vielen veranstaltungen der letzten wochen nehme ich den eindruck mit die stimmung für cdu und csu ist besser als die umfragen darin liegt jetzt unsere chance bitte gehen sie alle morgen wählen und geben sie beide stimmen der union tm merzmail unionstärkstekraft"         
#>  [3] "sendung verpasst sehen sie hier die diskussion zwischen friedrich merz und hubertus heil bei sandra maischberger in der ard mediathek ab ca neunzehn tm"                                                                                                                           
#>  [4] "ich bin mir nicht sicher ob wir corona einschränkungen wie die maskenpflicht noch brauchen wir sehen in ländern die rascher gelockert haben niedrige inzidenzen und hospitalisierungsquoten und wir sehen wie viel gesellschaftlichen dissens die maßnahmen verursachen tm"        
#>  [5] "frau nahles hatte recht der mechanismus der mindestlohnkommission ist wichtig damit der mindestlohn kein wahlkampfthema wird der vorschlag für zwölf euro mindestlohn ist rein populistisch jetzt startet ein politischer überbietungswettbewerb zwischen spd und linkspartei tm"  
#>  [6] "ich war immer für den mindestlohn die entscheidende frage ist wer ihn in zukunft festlegt die tarifvertragsparteien oder der gesetzgeber aus meiner sicht sollte dieses thema in der mindestlohnkommission bleiben und gehört nicht in den bundestag tm merz maischberger"         
#>  [7] "die oberen zehn der steuerpflichtigen bezahlen mehr als fünfzig des einkommenssteueraufkommens zu behaupten dass sich diese menschen nicht genug an der finanzierung des gemeinwesens beteiligen ist unseriös wir haben die höchsten steuern und abgaben in europa tm maischberger"
#>  [8] "die vollständige abschaffung des solidaritätszuschlags ist eine frage des respekts und der fairness gegenüber all denjenigen die dreißig jahre lang die deutsche einheit finanziert haben alles andere ist ein gebrochenes versprechen des steuergesetzgebers tm maischberger merz"
#>  [9] "die cdu hat damals als oppositionspartei der agenda tausende der spd zugestimmt wir sehen es mit bedauern dass diese reformen von den sozialdemokraten schritt für schritt wieder zurückgenommen werden wir müssen zurückkehren zum prinzip fördern und fordern tm maischberger"   
#> [10] "von analog tausende zu digital tausende schauen sie mal was mein team und ich heute zum abschluss des wahlkampfes im hochsauerlandkreis online gestellt haben leiten sie das video auch gerne an freunde und bekannte weiter hier geht s zum download"