df <- read.csv("supertone.csv", header = TRUE)

names(df)[names(df) == "function."] <- "function"
library(psych)

크리에이터별 tts 사용 여부

df_gen <- df[df$content_exp == "Y", ]

df_gen$tts_exp <- ifelse(df_gen$tts_use == "Y", 1, 0)

tts_use = Y (tts 사용해 봄)이면 1
tts_use = N (tts 사용해 본 적 없음)이면 0

describeby

r_gen <- describeBy(df_gen[, c("tts_exp")], group = df_gen$content_genre)

r_gen_df <- do.call(rbind, r_gen)

r_gen_df[, c("n", "mean", "sd", "median", "min", "max", "range")]
##                  n mean  sd median min max range
## info            21 0.38 0.5    0.0   0   1     1
## original         2 1.00 0.0    1.0   1   1     0
## self_exp        56 0.50 0.5    0.5   0   1     1
## virtual_persona  2 0.00 0.0    0.0   0   0     0

정보전달형(info): 사용 비율 0.38 (n=21)
오리지널형(original): 사용 비율 1.00 (n=2)
자기표현형(self_exp): 사용 비율 0.50 (n=56)
가상 기반 페르소나형(virtual_persona): 사용 비율 0.00 (n=2)

anova 검정

anova_res <- aov(tts_exp ~ content_genre, data = df_gen)

summary(anova_res)
##               Df Sum Sq Mean Sq F value Pr(>F)
## content_genre  3   1.22  0.4068   1.653  0.184
## Residuals     77  18.95  0.2461

H_0: 콘텐츠 장르에 따른 tts 사용 여부 차이가가 없다.
H_1: 콘텐츠 장르에 따른 tts 사용 여부 차이가 있다.

통계적 검정에 따른 유의미한 차이는 없다. (p = .184)


영상 제작 빈도별 tts factor 점수

df_tts <- df[df$tts_use == "Y", ]

r_fac <- describeBy(df_tts[, c("price", "quality", "speed", "variety", "function", "famous", "convenience")], group = df_tts$tts_num)
r_fac_df <- do.call(rbind, r_fac)

r_fac_df[, c("n", "mean", "sd", "median", "min", "max", "range")]
##                     n mean   sd median min max range
## active.price       10 3.70 1.49    3.5   2   7     5
## active.quality     10 3.90 1.37    3.0   3   7     4
## active.speed       10 3.70 1.89    3.5   1   7     6
## active.variety     10 3.20 1.48    2.5   2   6     4
## active.function    10 3.50 2.07    3.5   1   7     6
## active.famous      10 4.50 1.72    4.0   2   7     5
## active.convenience 10 3.40 2.12    4.0   1   7     6
## casual.price        8 4.12 2.30    4.5   1   7     6
## casual.quality      8 4.38 1.77    4.5   1   6     5
## casual.speed        8 5.12 1.46    5.0   3   7     4
## casual.variety      8 5.75 1.04    6.0   4   7     3
## casual.function     8 5.75 1.49    6.5   4   7     3
## casual.famous       8 4.50 2.73    5.0   1   7     6
## casual.convenience  8 4.75 2.25    5.0   2   7     5
## pro.price          10 3.80 1.69    4.0   1   7     6
## pro.quality        10 3.60 1.51    3.0   2   7     5
## pro.speed          10 3.60 1.35    3.0   2   6     4
## pro.variety        10 4.50 1.27    4.0   3   7     4
## pro.function       10 3.50 2.07    3.5   1   7     6
## pro.famous         10 4.40 2.22    4.5   1   7     6
## pro.convenience    10 2.50 1.43    2.0   1   5     4
## rare.price         10 3.80 1.62    4.0   1   6     5
## rare.quality       10 4.10 1.52    4.0   1   6     5
## rare.speed         10 4.50 1.96    4.0   1   7     6
## rare.variety       10 3.40 1.65    3.5   1   6     5
## rare.function      10 3.00 1.33    3.0   1   5     4
## rare.famous        10 3.70 1.83    4.0   1   7     6
## rare.convenience   10 4.20 1.55    4.0   2   7     5
r_fac_df[c("active.famous", "casual.famous", "pro.famous", "rare.famous"), c("n", "mean", "sd", "median", "min", "max", "range")]
##                n mean   sd median min max range
## active.famous 10  4.5 1.72    4.0   2   7     5
## casual.famous  8  4.5 2.73    5.0   1   7     6
## pro.famous    10  4.4 2.22    4.5   1   7     6
## rare.famous   10  3.7 1.83    4.0   1   7     6

1 = 중요하다
7 = 중요하지 않다

rare.famous: mean = 3.7, median = 4.0 (n=10)
casual.famous: mean = 4.5, median = 5.0 (n=8)
active.famous: mean = 4.5, median = 4.0 (n=10)
pro.price: mean = 4.4, median = 4.5 (n=10)

영상을 적게 만드는 사람이 인지도를 중요하게 평가한다. 그러나 casual 이상으로 갔을 때 큰 차이는 없다.

anova 검정은 생략한다.

write.csv(r_fac_df, "./supertone_factor.csv")

write.csv(r_gen_df, "./supertone_genre.csv")