Intro
- 지난 시간에 설문조사 전처리에 대해 배웠다면 이번에는 경영/사회과학 논문에서 필수적으로 기재해야 하는
표본의 특성을 간단한 프로그램으로 요약하는 것을 코딩한다.
(1) 주요 패키지
- 이번 포스트부터 gt 패키지를 사용하려고 한다.
- gt: ggplot2와 같이
Table를 문법으로 컨트롤 할 수 있도록 구현된 패키지이다. - kableExtra:
HTML로 출력할 수 있도록 도와주는 패키지이다.
library(readr)
library(dplyr)
library(gt)
library(gtsummary)
I. 데이터 가져오기
data <- read_csv('data/thesis_mater.csv') %>%
distinct() %>% # 중복데이터 제거
rename(Position = founder_employee, # 출력을 위한 변수명 정리
Age = age_of_respondent,
Education = Education_Level)
glimpse(data %>% select(Firm_Age:Business_Area))
- 전체 34개의 변수 중에서,
문자열 관련 데이터만 추출하였다. - 어떤 데이터를 표본의 특성으로 삼아야 할까?
- 위 10개의 데이터에는 통제변수가 들어가 있다.
- 통제변수는 표본의 특징이 아니기 때문에 통제변인을 제외한 나머지 변수들을 추출한다.
## Rows: 103
## Columns: 10
## $ Firm_Age <chr> "5 years above", "Less than 2 years", "5 years above", …
## $ Firm_Size <chr> "Above 15 members", "Less than 5 members", "Less than 5…
## $ WE1 <chr> "No, I don't have experience", "No, I don't have experi…
## $ WE2 <chr> "Yes", "No", "No", "Yes", "No", "No", "No", "No", "No",…
## $ WE3 <chr> "Yes", "Yes", "Yes", "Yes", "Yes", "No", "Yes", "No", "…
## $ gender <chr> "Female", "Male", "Female", "Male", "Male", "Female", "…
## $ Position <chr> "Employee", "Employee", "Founder of Company", "Employee…
## $ Age <chr> "30-39", "Younger than 30", "Younger than 30", "Younger…
## $ Education <chr> "Undergraduate School", "Undergraduate School", "Underg…
## $ Business_Area <chr> "Others", "Media and Entertainment", "Others", "Others"…
- 표본의 특성을 기술하는 데이터는 아래와 같이 추출한다.
- gender, founder_employee, age_of_respondent, educational_level, business_area
data2 <- data %>%
select(gender, Position, Age, Education, Business_Area)
glimpse(data2)
## Rows: 103
## Columns: 5
## $ gender <chr> "Female", "Male", "Female", "Male", "Male", "Female", "…
## $ Position <chr> "Employee", "Employee", "Founder of Company", "Employee…
## $ Age <chr> "30-39", "Younger than 30", "Younger than 30", "Younger…
## $ Education <chr> "Undergraduate School", "Undergraduate School", "Underg…
## $ Business_Area <chr> "Others", "Media and Entertainment", "Others", "Others"…
II. 표본 특성 표 출력
- 보통 논문에 들어가는 표본의 특징은 Category, Frequency, and Percentage(%) 정도만 필요하다.
- 이 때,
Table을 가공해줄 수 있는 gtsummary 패키지를 활용한다.
set_gtsummary_theme(theme_gtsummary_journal(journal = "jama"))
data2 %>%
tbl_summary(by = gender) %>%
add_overall() %>%
add_n() %>%
modify_header(label = "**Variable**") %>% # update the column header
bold_labels()
| Variable | N | Overall, N = 103 | Female, N = 62 | Male, N = 41 |
|---|
| Position | 103 | | | |
| Employee | | 68 (66) | 35 (56) | 33 (80) |
| Founder of Company | | 35 (34) | 27 (44) | 8 (20) |
| Age | 103 | | | |
| 30-39 | | 37 (36) | 19 (31) | 18 (44) |
| 40-49 | | 8 (7.8) | 4 (6.5) | 4 (9.8) |
| 50 or above | | 2 (1.9) | 2 (3.2) | 0 (0) |
| Younger than 30 | | 56 (54) | 37 (60) | 19 (46) |
| Education | 103 | | | |
| Graduate School | | 25 (24) | 15 (24) | 10 (24) |
| High School | | 7 (6.8) | 6 (9.7) | 1 (2.4) |
| Undergraduate School | | 71 (69) | 41 (66) | 30 (73) |
| Business_Area | 103 | | | |
| E-Commerce | | 16 (16) | 11 (18) | 5 (12) |
| Education | | 4 (3.9) | 2 (3.2) | 2 (4.9) |
| Energy | | 1 (1.0) | 0 (0) | 1 (2.4) |
| Enterprise Services | | 4 (3.9) | 2 (3.2) | 2 (4.9) |
| Fintech | | 9 (8.7) | 6 (9.7) | 3 (7.3) |
| Logistics | | 5 (4.9) | 1 (1.6) | 4 (9.8) |
| Manufacturing | | 3 (2.9) | 2 (3.2) | 1 (2.4) |
| Media and Entertainment | | 7 (6.8) | 4 (6.5) | 3 (7.3) |
| Medical and Healthcare | | 1 (1.0) | 1 (1.6) | 0 (0) |
| Online to Offline Commerce | | 2 (1.9) | 1 (1.6) | 1 (2.4) |
| Others | | 45 (44) | 31 (50) | 14 (34) |
| Real Estate and Household | | 1 (1.0) | 0 (0) | 1 (2.4) |
| Transportation/Automotive | | 4 (3.9) | 0 (0) | 4 (9.8) |
| Travel | | 1 (1.0) | 1 (1.6) | 0 (0) |