트위터 데이터의 구성 요소

R로 소셜 미디어 데이터 분석하기

Sowmya Vivek

Data Science Coach

학습 개요

  • 트위터 JSON 소개
  • JSON에서 메타데이터 구성 요소 추출
  • 구성 요소로 인사이트 도출
R로 소셜 미디어 데이터 분석하기

트위터 JSON

  • 트윗은 150개 이상의 메타데이터 구성 요소를 가질 수 있음
  • 트윗과 구성 요소는 JSON(JavaScript Object Notation) 형식으로 제공
R로 소셜 미디어 데이터 분석하기

JSON 속성과 값

  • 트윗과 구성 요소를 설명하는 속성/값
  • 예: screen_name은 사용자의 트위터 핸들을 저장

Twitter JSON 속성과 값

R로 소셜 미디어 데이터 분석하기

JSON을 데이터프레임으로 변환

  • rtweet 라이브러리로 트위터 JSON을 데이터프레임으로 변환
  • 속성과 값은 열 이름과 값으로 변환

JSON 속성을 데이터프레임 열로 변환

R로 소셜 미디어 데이터 분석하기

트윗 구성 요소 보기

# "#brexit" 트윗 추출
tweets_df <- search_tweets("#brexit")
# 열 이름 보기
names(tweets_df)
R로 소셜 미디어 데이터 분석하기

트윗 구성 요소 보기

트윗의 구성 요소

R로 소셜 미디어 데이터 분석하기

구성 요소 탐색

  • screen_name: 사용자의 관심사 파악
  • followers_count: 소셜 영향력 비교
  • retweet_counttext: 인기 트윗 식별
R로 소셜 미디어 데이터 분석하기

사용자 관심사와 트윗 수

  • screen_name는 트위터 핸들을 의미
  • 게시 트윗 수로 주제 관심도 파악
  • 관심 사용자에게 제품 홍보
R로 소셜 미디어 데이터 분석하기

사용자 관심사와 트윗 수

# "#Arsenal" 트윗 추출
twts_arsnl <- search_tweets("#Arsenal", n = 18000)
# 사용자와 해당 주제의 트윗 수 집계
dc_name <- table(twts_arsnl$screen_name)
head(dc_name)
_____today_____   ___JJ23    ___SAbI__   __ambell   __Amzo__     __bobbysingh 
       1               2          3           1         1               1
R로 소셜 미디어 데이터 분석하기

사용자 관심사와 트윗 수

# 트윗 수 기준 내림차순 정렬
sc_name_sort <- sort(sc_name, decreasing = TRUE)
# 상위 6명과 트윗 빈도 확인
head(sc_name_sort)
 _whatthesport  footy90com  Official_ATG1   TheShortFuse   RubellM   ArsenalZone_Ind 
      176           90            88             53           48            43
R로 소셜 미디어 데이터 분석하기

팔로워 수

  • 트위터 계정의 팔로워 수
  • 계정의 인기도 지표
  • 소셜 미디어 영향력의 척도
  • 인기 계정에 광고 집행으로 노출 확대
R로 소셜 미디어 데이터 분석하기

팔로워 수 비교

# lookup_users()로 사용자 데이터 조회
tvseries <- lookup_users("GameOfThrones", "fleabag", "BreakingBad")
# screen_name과 followers_count 열로 데이터프레임 생성
user_df <- tvseries[,c("screen_name","followers_count")]
R로 소셜 미디어 데이터 분석하기

팔로워 수 비교

# 비교를 위한 팔로워 수 확인
user_df
screen_name        followers_count
<chr>                   <int>
GameOfThrones          8597188            
fleabag                  58727            
BreakingBad            1240349
R로 소셜 미디어 데이터 분석하기

리트윗 수와 인기 트윗

  • 리트윗: 다른 사용자가 다시 공유한 트윗
  • retweet_count에 리트윗 수 저장
  • 리트윗 수로 트렌드 파악
  • 인기 리트윗은 브랜드 홍보에 활용 가능
R로 소셜 미디어 데이터 분석하기

리트윗 수와 인기 트윗

# 트윗 텍스트와 리트윗 수 데이터프레임 생성
rtwt <- tweets_arsenal[,c("text", "retweet_count")]
# 리트윗 수 내림차순 정렬
library(dplyr)
rtwt_sort <- arrange(rtwt, desc(retweet_count))
R로 소셜 미디어 데이터 분석하기

리트윗 수와 인기 트윗

# 중복 트윗 텍스트 행 제거
rtwt_unique <- unique(rtwt_sort, by = "text")
R로 소셜 미디어 데이터 분석하기

리트윗 수와 인기 트윗

# 가장 많이 리트윗된 상위 6개 고유 게시물 출력
head(rtwt_unique)
retweet_count                text
<int>                        <chr>
5606            Once a Gunner, Always a Gunner. We are proud of you @alexanderiwob
3764            Emirates on Fire 🔥🔥🔥🔥 Never give up Gunners💪🏽💪🏽💪🏽 #Arsenal #CO
2798            That mood tonight ⚡️⚡️⚡️ 3️⃣ POINTS 🔴⚪️ #Arsenal #Gunners #COYG h
2741            #Arsenal fan: "I reckon we'll win the League this season." @Robbie
1687            Auba 😭😭😍😍 This is what I call happiness #aubameyang #arsenal
1166            When sky sports introduced the new Monday night football! The Sha
R로 소셜 미디어 데이터 분석하기

Ayo berlatih!

R로 소셜 미디어 데이터 분석하기

Preparing Video For Download...