'변수'에 해당되는 글 1건

  1. 2016.06.28 변수의 종류
반응형

통계학 관련 공부를 할 때 모든 책의 첫번째 챕터에서 변수의 종류를 다룬다. 처음 통계를 공부할 때 읽으면 아~ 이런게 있구나 하고 별것 아닌걸로 생각하고 변수들의 정의와 개념을 잘 익히지 않고 그냥 넘어가자 후반부로 가면 갈 수록 다시 책을 앞으로 넘겼다, 뒤로 넘겼다를 반복하였다. 통계학을 공부 할 때 반드시 알아야 할 변수의 종류. 아무리 강조해도 지나치지 않을 변수의 개념 공부.

 

1. 질적 변수(qualitative variable): 조사 대상을 특성에 따라 범주로 구분하여 측정된 변수로 범주형 변수(categorical data)라고도 함. 이러한 질적 변수에 대해 덧셈 등 수학적 연산결과는 아무런 의미가 없기 때문에 연산의 개념을 적용시킬 수 없다. 즉 남자 =1, 여자 =2 변수에서 1.5는 아무런 의미가 없다. 전화번호나 생일 역시 더하거나 나눈다고 하여 의미 있는 값을 얻을 수 없다. 질적 변수가 분석 대상일 때는 각 범주에 속한 개수나 퍼센트 등을 다룬다. 보통 원그래프나, 막대그래프를 이용한다.

 - 명목형(nominal): 변수나 크기가 순서에 대한 의미가 없고 이름만 의미를 부여할 수 있는 경우

   예) 성별(남자 = 1, 여자 =2), 자동차 브랜드(현대=1, 기아=2, 르노삼성=3, GM=4)

 - 순서형(ordinal) – 변수가 어떤 기준에 따라 순서에 의미를 부여할 수 있는 경우

   예) 교육수준(초졸=1, 중졸=2, 고졸=3, 대졸 이상=4), 건강 상태(양호=3, 보통=2, 나쁨=1)

 

2. 양적 변수(quantitative variable): 길이, 무게와 같이 양적인 수치로 측정되거나 몇 개인가를 세어 측정하는 변수로 덧셈, 뺄셈 등의 연산이 가능하다. 히스토그램, 줄기-잎 그림, 점 도표, 시계열 그래프 등을 이용한다.

 - 이산형(discrete): 변수가 취할 수 있는 값을 하나하나 셀 수 있는 경우

   예) 방 갯수, 퀴즈 문제 중 맞힌 개수, 보험 설계사가 계약을 체결할 때 까지 만난 사람 수

 - 연속형(continuous): 변수가 구간 안의 모든 값을 가질 수 있는 경우

 예) 실수 구간 안의 모든 값. 신생아의 키

 

 

어떤 변수의 경우는 이산형 또는 연속형으로 취급되는데, 나이가 그 좋은 예이다. 나이는 시간이 지남에 따라 계속 늘어나는 연속형 변수이지만, 1년 단위로 측정되면 이산형 변수이다. 

 

(1) 파이썬 코드

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np

# 예제 데이터 생성
data = pd.DataFrame({
    'Gender': ['Male', 'Female', 'Male', 'Female', 'Male', 'Female'],
    'Age': [25, 30, 22, 35, 28, 40],
    'Height': [175, 160, 180, 155, 170, 165]
})

# 질적 변수: 성별(Gender)
# 양적 변수: 나이(Age), 키(Height)

# 질적 변수 시각화 (막대 그래프)
plt.figure(figsize=(10, 5))
sns.countplot(x='Gender', data=data)
plt.title('Count of Individuals by Gender')
plt.show()

 

 

# 양적 변수 시각화 (히스토그램)
plt.figure(figsize=(10, 5))
sns.histplot(data['Age'], bins=20, color='skyblue')
plt.title('Distribution of Age')
plt.xlabel('Age')
plt.ylabel('Frequency')
plt.show()

 

# 양적 변수 시각화 (상자 그림)
plt.figure(figsize=(10, 5))
sns.boxplot(x='Height', data=data, color='lightgreen')
plt.title('Box Plot of Height')
plt.xlabel('Height')
plt.show()

 

 

 

반응형
Posted by 마르띤
,