Kom igångKom igång gratis

Dataintegritet

När du utforskar en datamängd stöter du ibland på något som får dig att ifrågasätta hur datan samlades in. Variabeln num_char innehåller till exempel antalet tecken i e-postmeddelandet, i tusental, och kan därför ha decimalvärden – men den bör inte ha negativa värden.

Du kan formulera ett test för att kontrollera att variabeln beter sig som förväntat:

email$num_char < 0

Om du kör den här koden i konsolen får du en lång vektor med logiska värden som för varje observation i datamängden anger om villkoret är TRUE. Här verkar de första 1 000 värdena alla vara FALSE. För att bekräfta att alla observationer verkligen har icke-negativa värden för num_char kan du ta summan av vektorn:

sum(email$num_char < 0)

Det här är en praktisk genväg. När du utför aritmetik på logiska värden behandlar R TRUE som 1 och FALSE som 0. Eftersom summan över hela vektorn är noll vet du att varje observation fick värdet FALSE i testet. Det vill säga att kolumnen num_char beter sig som förväntat och bara innehåller icke-negativa värden.

Den här övningen är en del av kursen

Exploratory Data Analysis in R

Visa kurs

Övningsinstruktioner

Titta närmare på variablerna image och attach. Du kan läsa om dem med ?email, men hjälpfilen är tvetydig: räknas bifogade bilder som bifogade filer i den här datamängden?

Designa ett enkelt test för att avgöra om bilder räknas som bifogade filer. Det innebär att du skapar ett logiskt villkor för att jämföra värdena i de två variablerna och sedan använder sum() för att utvärdera varje observation i datamängden. Kom ihåg att de logiska operatorerna är < för mindre än, <= för mindre än eller lika med, > för större än, >= för större än eller lika med och == för lika med.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Test if images count as attachments
Redigera och kör kod