Sentiment Analysis on Youtube Comment with R // Youtube Yorumlarıyla Duygu Analizi

Arife Gül Yalçın
2 min readApr 21, 2021

--

Youtube API kullanarak CSV dosyası oluşturmak için:

Önce aşağıdaki bağlantıyı kullanarak Google Konsoluna gidin:

https://console.developers.google.com/apis/library

Ardından projenize bir isim vererek projenizi oluşturun

YouTube Data API v3'ü seçin ve Etkinleştir(Enable) tıklayın.

Ardından, YouTube Analytics API’yi ve Etkinleştir(Enable) tıklayın.

Ardından Kimlik Bilgisi Oluştur(Create Credential) tıklayın ve Web browser (JavaScript) olarak API formunu seçin ve ardından erişilen verilerin seçimi olarak Public Data’yı seçin.

Ardından API anahtarına tıklayın ve Uygulama kısıtlamalarında(Application restrictions) HTTP referanslarını(HTTP referrers) seçin ve ardından altta bulunan kaydet’e tıklayın.

Oluşturma kimlik bilgilerini seçin ve açılır menü gelecektir. OAuth İstemci Kimliği’ni seçin Ardından Web uygulaması olarak Uygulama Türü’nü seçin ve ardından kaydet’e tıklayın.

Kimlik bilgileri(credentials) bölümlerinde OAuth 2.0 istemci kimliklerine gidin, Web istemcisinin adını tıklayın.

R KOD

# social media package
library(vosonSML)
library(dplyr)
library(magrittr)
#emotion sentiment package
library(syuzhet)
library(SentimentAnalysis)

#getting the comments from youtube
API_key <-” — — — — — -”

// — — YERİNE BURAYA KENDİ API KEY’İNİZİ GİRİNİZ

youtubeAuth <- Authenticate(“youtube”, apiKey = API_key)

#Collect data
videos <- c(‘wMpqCRF7TKg’, ‘Ur_wAcYDnuA’)
youtubeData <- youtubeAuth %>%
Collect(videos, writeToFile = FALSE, verbose = FALSE, maxComments = 1500)
str(youtubeData)

# write csv
write.csv(youtubeData, file = “youtubecomments.csv”, row.names = FALSE)

#read youtube csv data file

data <- read.csv(file.choose(), header = T)
str(data)
comments <- iconv(data$Comment ,to = ‘UTF-8’)

#obtain sentiment scores
s <- get_nrc_sentiment(comments)
head(s)
s$neutral <-ifelse(s$negative+s$positive==0,1,0)

#bar plot

barplot(150*colSums(s)/sum(s),
las =2,
col=rainbow(10),
ylab = “percentage”,
main=”sentiment scores of youtube comments”)

TÜM KOD SS

--

--

Arife Gül Yalçın
Arife Gül Yalçın

Written by Arife Gül Yalçın

Backend Developer @GrandMedicalGroup

No responses yet