Samenvatting Netwerk- en Social media analyse 2022
2 vues 0 fois vendu
Cours
Netwerk- en Social media analyse
Établissement
Vrije Universiteit Amsterdam (VU)
Samenvatting van de inhoud van het hoorcollege, de opdrachten/ modules in de werkgroepen (met uitleg) en de inhoud van de video tutorials.
Ik heb er een 7.7 mee gehaald.
Met de volgende opdrachten/ modules uit de werkgroepen:
- Tekst als data
- Frequentie-analyse en onderscheidende woorden...
Netwerk en sociale media analyse
Begrippen
Verschillende vormen van een bestand met tekstuele data:
1. corpus = verzameling teksten
2. document feature matrix
3. tidy bestand (one-token-per-row)
1. Corpus = verzameling teksten, met variabelen
>> in een corpus wordt vaak meta-informatie toegevoegd (bijvoorbeeld naam/
locatie van het Twitter-account, datum, het aantal likes of retweets)
2. Document feature matrix ( = breed: alle woorden naast elkaar in
de kolommen)
- Documents = posts
- features/terms = woorden
- docvars = kenmerken van posts
>> Het databestand wordt heel breed (wide)
3. Tidy-text dataset ( = lang: alle woorden onder elkaar in de rijen)
, - Table with one-token-per-row.
- Token = ‘betekenisvolle teksteenheid’ of ‘zinselement’ (meestal een
woord).
- Tokenization = het opknippen van teksten in kleine eenheden, in tokens
(meestal woorden)
- Het databestand wordt heel lang (long)
- Voorverwerking (pre-processing) en opschonen van tekstuele
data: stopwoorden, normalisatie (interpunctie en hoofdletters
verwijderen)
- Woordfrequentie: welke woorden komen vaak voor?
- Onderscheidende vormen: welke komen vaak voor en in de andere juist
niet?
Module 1: tekst als data
regel <- c(1,2,3,4)
regel
tekst <- c("Het regent en het is november:",
"Weer keert het najaar en belaagt",
"Het hart, dat droef, maar steeds gewender,",
"Zijn heimelijke pijnen draagt.")
Tekst = naam van de variabele
De 4 dichtregels = de bijhorende waarden (of scores) van deze variabele
1 dichtregel = één string (elke string moet tussen
aanhalingstekens zodat R dit als 4 losse stukjes tekst herkent)
- Leestekens horen ook bij de tekst, niet bij het commando
- Formele R-taal: character vector (R heeft van ‘tekst’ een tekstuele
variabele (character) gemaakt, ipv een nummerieke variabele (numeric))
- Je kunt geen gemiddelde uitrekenen van een character vector
Type variabele opvragen:
Class(regel)
,Class(tekst)
Aard van de variabele veranderen:
Regel <- as.character(regel)
Regel <- as.numeric(regel)
Variabelen samenvoegen in databestand:
>> = een corpus
gedicht_df <- data.frame (regel, tekst)
View (gedicht_df)
str (gedicht_df)
>> tibble is nagenoeg hetzelfde als een dataframe, maar iets simpeler van aard.
Packages quanteda & tidytext:
>> Bij beide wordt de corpus wordt omgezet in een databestand met een ander
soort structuur
Quanteda:
- Hierbij wordt vaak een document feature matrix (of document term
matrix) gebruikt
- Eerst aangeven dat het bestand een corpus is (dat weet R nog niet)
- Tekst_field geeft aan welke kolom de kern is van de corpus (= de kolom
met tekst)
- De dichtregels worden aangeduid als documents en hebben automatisch
namen gekregen (text1, text2, etc.)
- De eigenschappen van deze 4 documenten heten docvars (document-
variabelen)
- Elke regel wordt gezien als een apart document
Opsplitsen van de tokens (woorden):
Verwijderen van leestekens:
toks_gedicht <- tokens(corp_gedicht, remove_punct = TRUE
print (toks_gedicht)
Bestand omzetten in dfm:
dfm_gedicht <- dfm(toks_gedicht)
print(dfm_gedicht)
Wat houdt het in dat er hier 19 features zijn?
19 afzonderlijke termen/ tokens
En wat betekent de aanduiding dat de matrix 71.05% sparse is?
, ???
Dfm duidelijker kunnen zien:
df <- convert(dfm_gedicht, to="data.frame")
View(df)
- Unnest_tokens: transformeer een dataframe (of tibble) met een tekst-
kolom naar een databestand met one-token-per-row structuur. (op de rijen
komen alle afzonderlijke woorden te staan
- Standaardinstellingen van unnest_tokens: leestekens (punctuatie)
verwijderd en alle hoofdletters zijn omgezet in kleine letters.
Databestand maken met telling van de woorden:
freq_woorden <- gedicht_tidy %>%
count (woord, sort = TRUE)
Weergeven in een figuur:
library (ggplot2)
freq_woorden %>%
mutate(woord = reorder(woord, n)) %>%
ggplot(aes(n, woord)) +
geom_col()
- Mutate: om de variabele ‘woord’ aan te passen (variabele ordenen op
basis van de tweede genoemde variabele ‘n’)
- n is een numerieke variabele zodat een ordening van hoog naar laag
mogelijk is.
Nieuwe figuur met proportie op de x-as
>> want we willen liever niet het absolute aantal woorden weergeven, maar de
relatieve frequentie
Freq <- gedicht_tidy %>%
Count(woord, sort = TRUE) %>%
Mutate(totaal= sum (n)) %>%
Mutate(prop = n / totaal)
Freq %>%
Mutate(woord = reorder(woord, prop)) %>%
Les avantages d'acheter des résumés chez Stuvia:
Qualité garantie par les avis des clients
Les clients de Stuvia ont évalués plus de 700 000 résumés. C'est comme ça que vous savez que vous achetez les meilleurs documents.
L’achat facile et rapide
Vous pouvez payer rapidement avec iDeal, carte de crédit ou Stuvia-crédit pour les résumés. Il n'y a pas d'adhésion nécessaire.
Focus sur l’essentiel
Vos camarades écrivent eux-mêmes les notes d’étude, c’est pourquoi les documents sont toujours fiables et à jour. Cela garantit que vous arrivez rapidement au coeur du matériel.
Foire aux questions
Qu'est-ce que j'obtiens en achetant ce document ?
Vous obtenez un PDF, disponible immédiatement après votre achat. Le document acheté est accessible à tout moment, n'importe où et indéfiniment via votre profil.
Garantie de remboursement : comment ça marche ?
Notre garantie de satisfaction garantit que vous trouverez toujours un document d'étude qui vous convient. Vous remplissez un formulaire et notre équipe du service client s'occupe du reste.
Auprès de qui est-ce que j'achète ce résumé ?
Stuvia est une place de marché. Alors, vous n'achetez donc pas ce document chez nous, mais auprès du vendeur lisannestielstra. Stuvia facilite les paiements au vendeur.
Est-ce que j'aurai un abonnement?
Non, vous n'achetez ce résumé que pour €9,49. Vous n'êtes lié à rien après votre achat.