YouTube adalah sebuah situs web berbagi video yang dibuat oleh tiga mantan karyawan PayPal pada Februari 2005. Situs web ini memungkinkan pengguna mengunggah, menonton, dan berbagi video.[8] Perusahaan ini berkantor pusat di San Bruno, California, dan memakai teknologi Adobe Flash Video dan HTML5 untuk menampilkan berbagai macam konten video buatan pengguna/kreator, termasuk klip film, klip TV, dan video musik. Selain itu, konten amatir seperti blog video, video orisinal pendek, dan video pendidikan juga ada dalam situs ini. [https://id.wikipedia.org/wiki/YouTube]
Dalam reporting kali ini akan dilakukan beberapa analisa dari sebuah data frame yang telah ada untuk menunjukan kesimpulan-kesimpulan yang diharapkan dapat bermanfaat bagi para pembuat video yang ingin mengunggah videonya ke platfform youtube.
vids <- read.csv("USvideos.csv")Dari data yang telah kita read kita ingin melihat 3 data teratas dan terbawah dari data yang akan kita gunakan
head(vids, 3)tail(vids, 3)Pada tahapan ini kita akan melihat type data dari masing-masing variabel apakah sudah sesuai atau belum
str(vids)## 'data.frame': 13400 obs. of 12 variables:
## $ trending_date : chr "17.14.11" "17.14.11" "17.14.11" "17.14.11" ...
## $ title : chr "WE WANT TO TALK ABOUT OUR MARRIAGE" "The Trump Presidency: Last Week Tonight with John Oliver (HBO)" "Racist Superman | Rudy Mancuso, King Bach & Lele Pons" "Nickelback Lyrics: Real or Fake?" ...
## $ channel_title : chr "CaseyNeistat" "LastWeekTonight" "Rudy Mancuso" "Good Mythical Morning" ...
## $ category_id : int 22 24 23 24 24 28 24 28 1 25 ...
## $ publish_time : chr "2017-11-13T17:13:01.000Z" "2017-11-13T07:30:00.000Z" "2017-11-12T19:05:24.000Z" "2017-11-13T11:00:04.000Z" ...
## $ views : int 748374 2418783 3191434 343168 2095731 119180 2103417 817732 826059 256426 ...
## $ likes : int 57527 97185 146033 10172 132235 9763 15993 23663 3543 12654 ...
## $ dislikes : int 2966 6146 5339 666 1989 511 2445 778 119 1363 ...
## $ comment_count : int 15954 12703 8181 2146 17518 1434 1970 3432 340 2368 ...
## $ comments_disabled : logi FALSE FALSE FALSE FALSE FALSE FALSE ...
## $ ratings_disabled : logi FALSE FALSE FALSE FALSE FALSE FALSE ...
## $ video_error_or_removed: logi FALSE FALSE FALSE FALSE FALSE FALSE ...
Berdasarkan penjelasan diatas kita mengetahui massih terdapat data yang belum sesuai tipenya seperti
Oleh karena itu kita akan coba merubah tipe data diatas agar sesuai dengan tahapan sebagai berikut
# mengubah kolom publish date dan trending date menggunakan function lubridate
library(lubridate)
vids$trending_date <- ydm(vids$trending_date)
vids$publish_time <- vids$publish_time <- ymd_hms(vids$publish_time,tz = "America/New_York")
head(vids)# mengubah kolom category_id dan channel_title menjadi tipe data factor
vids$category_id <- as.factor(vids$category_id)
vids$channel_title <- as.factor(vids$channel_title)
head(vids)# Memasukan label untuk Category_id dengan function `sapply()` dan `switch()`
vids$category_id <- sapply(X = as.character(vids$category_id), FUN = switch,
"1" = "Film and Animation",
"2" = "Autos and Vehicles",
"10" = "Music",
"15" = "Pets and Animals",
"17" = "Sports",
"19" = "Travel and Events",
"20" = "Gaming",
"22" = "People and Blogs",
"23" = "Comedy",
"24" = "Entertainment",
"25" = "News and Politics",
"26" = "Howto and Style",
"27" = "Education",
"28" = "Science and Technology",
"29" = "Nonprofit and Activism",
"43" = "Shows")
head(vids)vids$category_id <- as.factor(vids$category_id)
head(vids)Membuat function untuk mengkategorikan waktu tayang dari masing-masing video
library(lubridate)
vids$publish_hour <- hour(vids$publish_time)
convert_hour <- function(x){
if(x < 8){
x <- "12am to 8am" # Untuk video dengan publish_hour antara tengah malam hingga jam 8 pagi
}else
if(x >= 8 & x < 16){
x <- "8am to 3pm" # untuk video antara jam 8 pagi hingga jam 3 sore
} else{
x <- "3pm to 12am" # untuk video antara jam 3 sore sampai tengah malam
}
}
12## [1] 12
x12 <- convert_hour(12)
x12## [1] "8am to 3pm"
function convert_hour() hanya menerima 1 input, sedangkan vids$publish_hour adalah vektor yang berisi banyak angka sehingga yang diubah menjadi kategori hanya observasi pertama saja.
Sehingga kita perlu menggunakan function sapply() untuk menerapkan 1 function ke semua observasi atau data.
vids$publish_when <- sapply (X= vids$publish_hour, FUN = convert_hour)
vidsmengubah variabel publish when menjadi tipe data faktor
vids$publish_when <- as.factor(vids$publish_when)
head(vids)Sebelum menggunakan data kita akan memeriksa terlebih dahulu apakah terdapat missing value dalam data kita sebagai berikut
colSums(is.na(vids))## trending_date title channel_title
## 0 0 0
## category_id publish_time views
## 0 0 0
## likes dislikes comment_count
## 0 0 0
## comments_disabled ratings_disabled video_error_or_removed
## 0 0 0
## publish_hour publish_when
## 0 0
head(vids)Hasil diatas menunjukan tidak adanya NA dalam data kita sehingga bisa kita lanjutkan untuk proses Data Explanation
Langkah pertama yang akan kita lakukan dalam penjelasan data adalah membuat summary
summary(vids)## trending_date title channel_title
## Min. :2017-11-14 Length:13400 NFL : 67
## 1st Qu.:2017-11-30 Class :character Refinery29 : 67
## Median :2017-12-17 Mode :character Vox : 67
## Mean :2017-12-17 First We Feast: 66
## 3rd Qu.:2018-01-03 ESPN : 64
## Max. :2018-01-21 NBA : 63
## (Other) :13006
## category_id publish_time views
## Entertainment :3185 Min. :2008-04-05 14:22:40 Min. : 687
## Music :2021 1st Qu.:2017-11-25 15:52:30 1st Qu.: 91096
## Howto and Style :1262 Median :2017-12-12 21:23:04 Median : 309796
## Comedy :1215 Mean :2017-11-18 13:46:37 Mean : 1234583
## People and Blogs :1076 3rd Qu.:2017-12-27 09:00:03 3rd Qu.: 996668
## News and Politics:1073 Max. :2018-01-21 00:44:30 Max. :149376127
## (Other) :3568
## likes dislikes comment_count comments_disabled
## Min. : 0 Min. : 0 Min. : 0.0 Mode :logical
## 1st Qu.: 1987 1st Qu.: 85 1st Qu.: 283.8 FALSE:13172
## Median : 8907 Median : 322 Median : 1017.5 TRUE :228
## Mean : 45662 Mean : 3352 Mean : 5982.4
## 3rd Qu.: 29376 3rd Qu.: 1113 3rd Qu.: 3362.2
## Max. :3093544 Max. :1674420 Max. :1361580.0
##
## ratings_disabled video_error_or_removed publish_hour publish_when
## Mode :logical Mode :logical Min. : 0.00 12am to 8am:2392
## FALSE:13341 FALSE:13399 1st Qu.: 9.00 3pm to 12am:3511
## TRUE :59 TRUE :1 Median :12.00 8am to 3pm :7497
## Mean :11.99
## 3rd Qu.:16.00
## Max. :23.00
##
Summary
Trending date yang ditunjukkan oleh data dimulai pada tanggal 14 November 2017
Emtertainment merupakan caategory yang paling diminati dengan jumlah viewer mencapai 3181 viewers
Dari semua video yang terdapat di data ada sebanyak 228 yang melakukan disable comment
graphics::barplot(xtabs(likes ~ category_id , vids)) Dari grafik diatas kita dapat melihat bahwa video musik yang paling banyak mendapatkan like dari para viewer
summary(vids$views)## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 687 91096 309796 1234583 996668 149376127
dari summary video diatas kita dapat melihat nilai views terendah berada pada pada angka 687
Berdasarkan informasi ini kita akan melihat channel video mana yang memliki angka view sebesar 687
vids [vids$views == 687,]Answer : Channel youtube dengan viewer yang paling sedikit adalah GoDucksdotcom
Hehe <- vids[vids$category_id == "Entertainment",]
aggPRmax <- aggregate(formula = likes ~ category_id + title , data = Hehe, FUN = max)
aggPRmax <- aggPRmax[order(aggPRmax$like, decreasing =T),]Answer : Judul video youtube dari kategori Entertainment yang memiliki likes terbanyak adalah YouTube Rewind: The Shape of 2017 | #YouTubeRewind
xtabs(views ~ publish_when + category_id ,vids)## category_id
## publish_when Autos and Vehicles Comedy Education Entertainment
## 12am to 8am 2507893 155507300 6748914 572525040
## 3pm to 12am 41844474 471996505 14480532 948062797
## 8am to 3pm 45572487 745670893 239560302 3260412864
## category_id
## publish_when Film and Animation Gaming Howto and Style Music
## 12am to 8am 21285811 8687476 303200160 2444612260
## 3pm to 12am 61672191 51247723 178829268 888610634
## 8am to 3pm 983613906 99015944 436605938 2146265413
## category_id
## publish_when News and Politics Nonprofit and Activism People and Blogs
## 12am to 8am 59068306 74868 204228818
## 3pm to 12am 79523276 23634 396477234
## 8am to 3pm 175551410 284865 193547511
## category_id
## publish_when Pets and Animals Science and Technology Shows Sports
## 12am to 8am 67980316 64388242 0 72590479
## 3pm to 12am 32937250 313547082 1751446 298413390
## 8am to 3pm 78929236 220104908 0 93579716
## category_id
## publish_when Travel and Events
## 12am to 8am 6975554
## 3pm to 12am 18674816
## 8am to 3pm 36224520
plot(xtabs(views ~ publish_when + category_id ,vids))Answer : Berdasarkan informasi yang di dapat diatas dapat disimpulkan bahwa viewers terbanyak didapat dari kategori Entertainment pada jam 8 am ke 3 pm
sum(vids$comment_count)## [1] 80164624
Answer : comment yang ada adalah sebanyak 80,164,624
aggPRmean <- aggregate(formula = comment_count ~ category_id, data = vids, FUN = mean)
aggPRmean <- aggPRmean[order(aggPRmean$comment_count, decreasing =T),]Answer : Music
Video dengan kateogri sports memiliki angka views yang sangat sedikit, berdasarkan data diatas salah satu hal yang dimungkinkan video ini memiliki views yang rendah dikarenakan waktu tayang video ini tidak sesuai dengan waktu para penggemar olah raga terkait menghabiskan waktunya menonton youtube.
Dari kategori video Entertainment dapat kita lihat bahwa video yang menempati 6 posisi teratas dengan like terbanyak adalah video dengan konten yang berkaitan dengan kreatifitas gabungan video-video yang ada di youtube pada tahun tertentu, film yang sedang trending, dan juga video yanng berkaitan dengan permainan tantangan kreatif.
Bagi Youtube content maker yang ingin mendapatkan views banyak maka disarankan mengambil kategori video entertainment pada jam jam 8 am ke 3 pm
Jumlah comment dari data youtube yang kita miliki adalah 80,164,624, namun dari tidak semua kategori video mendapatkan jumlah comment yang sama. Diantara kateogri yang ada kategori Music, entertainment dan gaming memiliki nilai yang tertingi. Berdasarkan hal ini dimungkinan bahwa antusias dari viewer yang menonton video ini cukup tinggi sehingga ingin memberikan komentarnya agar terlibat dari sekedar hanya menonton video saja.