paste(), substr(), nchar()stringr
readLines(con=,encoding=) kan användas för att läsa in en text. Varje rad i texten blir då ett element i en vektor.
Icke-engelska symboler/tecken text kräver encoding (ex. för å,ä och ö).
Vi ändrar med encoding = "latin1" i readLines().
Vanligast är latin1 och UTF8 (men Windows can ha egna encodings)
str_| stringr | base | Användning |
|---|---|---|
str_sub() |
substr() |
substring, välja ut en del av en sträng (regex) |
str_c() |
paste(), paste0() |
slår ihop strängelement |
str_split() |
strsplit() |
dela upp en sträng i flera element (regex) |
str_length() |
nchar() |
beräknar antalet tecken |
str_trim() |
- | tar bort mellanslag (före/efter textelement) |
str_pad() |
- | lägger till mellanslag (före/efter textelement) |
In computing, regular expressions provide a concise and flexible means for identifying strings of text of interest, such as particular characters, words, or patterns of characters.
| Tecken | Betydelse |
|---|---|
. |
samtliga tecken (exkl. det “tomma” tecknet “”) |
^ |
det “tomma” tecknet i början av en text |
$ |
det “tomma” tecknet i slutet text |
* |
föregående tecken 0 eller fler gånger |
+ |
föregående tecken 1 eller fler gånger |
? |
föregående tecken är valfritt |
{n,m} |
föregående tecken n eller max m gånger |
[...] |
teckenlista (character list) |
| | | ELLER |
(...) |
Gruppering |
\ |
Används för att “undvika” metatecken/specialtecken. |
Obs! I R krävs: \\
[ ] skapas en lista över tänkbara tecken, en s.k. teckenklass (eng. character class)| Tecken | Betydelse | Exempel |
|---|---|---|
- |
tecken | A-Z a-z 0-9 |
^ |
ICKE | ^0-9 |
\ |
specialtecken | \t\n |
Obs! I R krävs: \\
Vanliga fördefinierade klasser är… (kolla ?regexp)
[:digit:] Nummer[:lower:] gemener[:upper:] VERSALER[:punct:] tecken, ej bokstäver eller siffror [:space:] mellanslag, tab, ny rad m.m.
I R behöver vi ange att det är en teckenklass: [[:space:]]
pattern är ett regular expression i R| stringr | base | Användning |
|---|---|---|
str_detect() |
grepl() |
identifierar pattern, returnerar en logisk vektor |
str_locate() |
gregexpr() |
identifierar pattern, returnerar positionen i texten |
str_replace() |
gsub() |
identifierar pattern, och ersätter detta med ny text |
str_extract_all |
- | Plocka ut alla strängar som uppfyller pattern |
z <- a %>%
fun1(b) %>%
fun3()
är detsamma som
x <- fun(a, b)
z <- fun3(x)
messy data %>%
tidy data %>%
analys
tbl_df till data.frame| verb | beskrivning |
|---|---|
select() |
välj kolumn |
filter() |
filtrera rader |
arrange() |
arrangera rader |
mutate() |
skapa nya kolumner |
summarise() |
aggregera rader över grupp |
group_by() |
gruppera för “split-apply-combine”/aggregera |
join |
kombindera olika dataset |
bind_rows |
kombindera dataset “på höjden” |
bind_cols |
kombindera dataset “på bredden” |
| funktion | beskrivning |
|---|---|
left_join() |
slå ihop efter variabel, behåll obs. i vänstra data.frame |
right_join() |
slå ihop efter variabel, behåll obs. i högra data.frame |
full_join() |
slå ihop efter variabel, behåll alla obs. |
anti_join() |
slå ihop efter variabel, behåll obs. som inte finns i båda |