데이터 사이언스 – 데이터 분류

데이터의 종류에는 어떤 것들이 있는지 정리해봅니다.


1.데이터의 종류

정형 데이터(Structured Data)

  • 구조화된 형식을 가지며, 행과 열로 이루어진 표 형태를 이룹니다. 열(Column)은 특정 유형의 데이터를 포함하고, 행(Row)은 고유한 레코드를 나타냅니다.

ex) CSV 파일, 관계형 DB 테이블

정형 데이터의 분류

  1. 질적 데이터(Qualitative data): 품질, 특성 또는 특성의 유무를 나타내는 비수치적 데이터입니다. 범주형 데이터라고도 불립니다. 수학적 계산이 가능하더라도 의미는 없습니다.
  • 명목형 (nominal data): 순서의 개념이 없습니다. Ex) 색상, 국가
  • 서열형 (ordinal data): 순서의 개념이 있습니다. Ex) 직급, 난이도
  1. 양적 데이터(Quantitative data): 양이나 수치를 나타낼 수 있는 데이터로, 수학적 계산이 가능한 데이터입니다.
  • 연속형 (continuous data): 실수와 같은 연속적인 수치를 나타내는 데이터입니다. Ex) 키, 무게, 온도
  • 이산형 (discrete data): 정수와 같이 불연속적인 수치를 나타내는 데이터입니다. Ex) 출석 인원수, 무사고 일수

df_titanic = pd.read_csv(‘data/titanic.csv’)
df_titanic.head()

df_titanic[[‘Survived’, ‘Pclass’, ‘Sex’, ‘Embarked’]].apply(
lambda x: x.loc[x.notna()].unique().tolist()
)

Survived, Pclass, Sex, Embarked 각 열에 대해서 결측을 제거하고 유일값을 뽑아줍니다.

df_titanic[‘PassengerId’]



df_titanic[[‘Age’, ‘SibSp’, ‘Parch’]]

수치를 나타내는 정수형 데이터 입니다.

Cabin은 명목형 데이터와 정수형 데이터가 결합되어 있고, 단일 객체를 나태는 것이 아닌 복수의 객체를 나타내도록 되어 있습니다.

C85, B53, B55

Cabin의 첫자리는 객실 유형을 그 다음 숫자는 객실의 위치를 나타냅니다

결측이 아닌 Cabin만을 뽑고, 객실 유형을 분리하여 CabinType 변수를 만들고,

객실 위치를 분리하여 CabinNo변수를 만듭니다.

df_titanic.loc[df_titanic[‘Cabin’].notna(), ‘Cabin’].unique()

df_titanic.loc[df_titanic[‘Cabin’].notna(), ‘Cabin’].str.split(‘ ‘).explode()..apply(
lambda x: pd.Series((x[:1], x[1:]), index=[‘Cabin_Type’, ‘Cabin_No’])
)

비정형 데이터(Unstructured Data)

  • 구조가 없거나 제한적인 구조를 가지고 있지 않은 데이터입니다. Ex) 텍스트, 음성, 비디오, …

반정형 데이터(Semi-Structured Data)

  • 일정한 형식을 지니고 있지만 완전한 정형 데이터는 아닌 데이터입니다.

XML

<person>
 <name>John Doe</name>
 <age>30</age>
 <address>
   <city>New York</city>
   <zipcode>10001</zipcode>
 </address>
 <contacts>
   <email>john.doe@example.com</email>
   <phone>123-456-7890</phone>
 </contacts>
</person>

JSON

{
  "person": {
    "name": "John Doe",
    "age": 30,
    "address": {
      "city": "New York",
      "zipcode": "10001"
    },
    "contacts": {
      "email": "john.doe@example.com",
      "phone": "123-456-7890"
    }
  }
}

2. 정형 데이터의 구성 요소

Series

  • 1차원의 인덱스가 부여된 자료 저장 공간
    • 인덱스(Index): 요소에 부여된 색인 데이터

s = pd.Series(
[1, 5, 3, 10, 7], index=[‘a’, ‘b’, ‘c’, ‘d’, ‘e’]
)

DataFrame

  • 2차원의 인덱스가 부여된 자료 저장 공간.
  1. 인덱스(Index): 행(row)에 부여된 색인 데이터
  2. 컬럼(Column): 열(column)에 부여된 색인 데이터

df_titanic.head()

보통 여러개의 Series가 모여 DataFrame을 구성합니다.


3. 빅데이터

3V (Volume, Velocity, Variety)

  1. Volume(양) : 데이터의 규모나 양을 나타냅니다.
  2. Velocity(속도): 데이터가 생성, 수집, 그리고 분석되는 속도를 나타냅니다.
  3. Variety(다양성): 데이터 형식의 다양함을 나타냅니다.

5V (3V + Veracity, Value)

  1. Veracity(정확성) : 데이터의 정확성과 신뢰성을 나타냅니다.
  2. Value(가치): 데이터를 통해 얻을 수 있는 가치를 나타냅니다.

4. 모델

  • 모델(모형)의 사전적 의미: 대상을 근사화한 객체
  • 통계 / 머신 러닝 관점에서의 의미데이터의 근사화 → 데이터에 드러난 패턴/지식을 근사화한 객체

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다