HOME
home
About
home

1.1 Data

데이터라는 용어는 현대 사회에서 필수적인 개념으로 자리 잡았습니다. 4차 산업혁명의 핵심 요소로 떠오르면서, 빅데이터, 딥러닝과 같은 첨단 기술들과 긴밀히 연관되어 있습니다. 일상생활에서도 흔히 접하는 단어가 되었는데, 최근에는 단순히 사실을 나타내는 것에서 더 나아가, 추론과 추정의 기반으로 활용되며 그 의미가 확장되고 있습니다. 이제 데이터는 단순한 정보의 나열을 넘어서, 상호관계 및 가치를 포함한 광범위한 개념을 포괄합니다.
DIKW(DIKW Pyramid) 피라미드
DIKW 모형은 Data(데이터), Information(정보), Knowledge(지식), Wisdom(지혜)의 첫 글자를 따서 명명된 개념적 틀로, 데이터에서 지혜까지의 가치 위계와 의미의 증가를 설명합니다. 이 모형은 데이터를 가공되지 않은 상태의 사실, 즉 사물이나 사건에 대한 묘사로 정의하며, 이러한 데이터가 특정 목적을 위해 처리되거나 추상화될 때 유용한 정보가 됩니다. 정보가 체계화되면 지식이 되고, 지식이 고도로 추상화되면 지혜에 이릅니다. 이러한 과정을 통해 가치와 의미가 점차 증가하는 것으로 볼 수 있습니다.
DIKW 모형은 가치 위계 모형 또는 가치 사슬 모형으로도 불리며, 경영정보학, 컴퓨터과학, 문헌정보학, 교육학 등 다양한 학문 분야에서 활용됩니다. 이 모형은 데이터, 정보, 지식 간의 관계를 고려할 때 각 요소 사이의 상호연관성을 인식하고, 앎에 대한 모델링이 이들 사이의 명확한 관계를 포함해야 함을 강조합니다.
그러나 이 모형이 제시하는 데이터와 정보, 정보와 지식 간의 관계는 명확하지 않으며, 특히 데이터의 처리나 추상화 과정이 어떻게 이루어지는지에 대한 구체적인 설명이 부족합니다. 더욱이 빅데이터 시대에는 데이터가 특정한 정보나 지식보다 더 큰 가치를 창출할 수 있는 잠재력을 지니고 있으며, 때로는 데이터 자체가 정보나 지식보다 더 높은 가치로 거래될 수도 있습니다. 이는 데이터, 정보, 지식의 가치 관계를 재고해 볼 필요가 있음을 시사합니다.
데이터베이스(DB)는 이러한 데이터(data)를 체계적으로 저장하고 관리하는 시스템을 말합니다. 데이터베이스 관리 시스템(DBMS)은 데이터베이스의 저장, 관리, 검색 등을 수행하는 소프트웨어 시스템입니다. 오라클, MySQL 같은 유명한 DBMS는 데이터의 효율적인 관리와 활용을 가능하게 합니다. 최근에는 디지털 전환 추세에 따라, 기업들이 DBMS를 필수적으로 통합하고 다양한 분야에 적용하는 경향이 있습니다.
빅데이터는 정보 기술의 진보와 4차 산업혁명에서 중요한 역할을 하는 개념입니다. 단순히 크기만으로 정의되지 않는 빅데이터는, 대규모 데이터가 가져오는 도전과 이를 해결할 수 있는 기술들을 포함합니다. 데이터의 규모가 커짐에 따라 필요한 물리적인 저장 공간의 확장, 분산 저장 및 관리 시스템, 그리고 대량의 데이터를 처리할 수 있는 병렬 컴퓨팅 기술 등을 포괄합니다. 이미지, 언어와 같은 비정형 데이터를 분석 가능하게 하는 기술들 또한 빅데이터의 중요한 구성 요소입니다.

다양한 기준에 따라 분류하는 데이터

데이터는 다양한 기준에 따라 분류될 수 있으며, 이러한 분류는 데이터의 특성을 이해하고, 효과적으로 처리하는 데 중요합니다.

데이터의 성격에 따라 정량적 데이터정성적 데이터

정량적 데이터 (Quantitative Data)
수치로 측정되거나 표현된 데이터
예: 온도(20°C), 거리(5km), 인구(500만 명) 등.
장점: 명확하고 객관적인 분석이 가능하며, 수학적 또는 통계적 처리에 용이
정성적 데이터 (Qualitative Data)
언어, 문자, 이미지 등 비수치적 형태로 표현되는 데이터
예: 설문 조사에서의 응답('매우 만족', '만족'), 인터뷰 내용, 사진 등.
특징: 해석이 주관적일 수 있고, 통계적 분석이 더 복잡

형태에 따라 정형 데이터비정형 데이터

정형 데이터 (Structured Data)
명확한 형식과 구조를 가진 데이터로, 데이터베이스, 엑셀 시트 등에서 흔히 볼 수 있습니다.
예: 고객 데이터베이스, 주식 시장 데이터 등.
비정형 데이터 (Unstructured Data)
구조화되지 않은 형태로, 정형화된 틀 없이 존재하는 데이터입니다.
예: 이메일 내용, 소셜 미디어 게시물, 비디오 파일 등.

데이터의 연속성과 비교 가능성에 따라 범주형 데이터수치형 데이터

(→ Spotfire에서 범주형과 수치형 데이터 구분은 특히 중요합니다.)
범주형 데이터 (Categorical Data)데이터가 특정 카테고리에 속하는 경우 사용
명목형 데이터 (Nominal Data): 순서가 없는 범주형 데이터 (예: 혈액형, 국가명).
순서형 데이터 (Ordinal Data): 순서가 있는 범주형 데이터 (예: 교육 수준, 성적 등급)
수치형 데이터 (Numerical Data)숫자로 표현되며, 정량적인 분석이 가능한 데이터
불연속 데이터 (Discrete Data): 정해진 값들 사이에서만 취할 수 있는 데이터 (예: 주사위의 눈, 자동차의 수).
연속 데이터 (Continuous Data): 연속적인 값들을 가질 수 있는 데이터 (예: 온도, 무게).
예를 들어, Python에서는 데이터 유형을 문자열(String), 정수(Integer), 부동소수점(Float), 불리언(Boolean) 등으로 구분합니다. 각 데이터 유형은 연산 및 처리 방법에 영향을 미칩니다.
Spotfire에서 데이터 유형
Spotfire에서 데이터 조절 위치
분석의데이터 이미지

데이터 수집에 관해서

데이터 시각화나 분석을 위해서는 단순히 데이터를 수집하는 것 이상의 고민이 필요합니다. 올바른 데이터 수집 방법론은 분석의 질과 시각화의 효과를 결정짓는 핵심 요소이기 때문입니다. 이 과정에서는 데이터의 유형, 데이터 수집의 목적, 그리고 데이터가 어떻게 분석 및 시각화에 사용될지에 대한 명확한 이해가 선행되어야 합니다.
첫째, 데이터의 유형을 고려해야 합니다. 수집할 데이터가 정량적인지, 정성적인지, 아니면 둘의 혼합인지를 파악하는 것이 중요합니다. 정량적 데이터는 수치로 표현되며, 분석과 시각화가 비교적 직관적입니다. 반면, 정성적 데이터는 텍스트, 이미지, 비디오 등 다양한 형태로 존재할 수 있으며, 이를 분석하고 시각화하기 위해서는 추가적인 처리 과정이 필요할 수 있습니다.
둘째, 데이터 수집의 목적을 명확히 해야 합니다. 데이터를 수집하는 주된 이유는 무엇인가요? 특정 질문에 대한 답을 찾기 위함인가요, 아니면 더 넓은 관점에서 트렌드를 파악하기 위함인가요? 데이터 수집의 목적이 분명할수록, 더 목표에 부합하는 데이터를 효과적으로 수집할 수 있습니다.
셋째, 수집된 데이터가 어떻게 분석 및 시각화에 사용될지 미리 계획하는 것이 중요합니다. 데이터를 어떤 방식으로 처리하고 분석할지, 어떤 유형의 시각화가 가장 효과적일지 고민하는 것입니다. 예를 들어, 시간에 따른 판매량의 변화를 보여주기 위해서는 선 그래프가 적합할 수 있고, 카테고리별 매출 분포를 보여주기 위해서는 바 차트나 파이 차트가 더 적합할 수 있습니다.
데이터 수집은 데이터 시각화와 분석의 기초를 이룹니다. 올바른 데이터를 올바른 방식으로 수집하고, 이를 통해 얻은 정보를 효과적으로 시각화하고 분석함으로써, 우리는 더 깊은 인사이트를 얻고, 복잡한 문제를 해결할 수 있습니다. 따라서, 데이터 수집 과정에서의 신중한 계획과 고민은 그 어느 때보다 중요합니다.
이와 같이 데이터 수집 과정을 보다 체계적이고 전략적으로 접근함으로써, 데이터 시각화와 분석의 효과를 극대화할 수 있습니다. 데이터 수집이 단순히 데이터를 모으는 것을 넘어서, 어떤 데이터를, 왜, 어떻게 수집해야 하는지에 대한 깊은 이해를 바탕으로 이루어져야 합니다.
스팟파이어 데이터 유형
입력
출력
Integer
Real
Currency/Decimal
Date/DateTime/Time
String
Binary
LongInteger
SingleReal
TimeSpan
Boolean
Integer
동일한 값
값이 실수로 캐스트됩니다.
값이 제한 범위에 맞는 경우 10진수로 변환됩니다.그 밖의 경우에는 Null.
정수 값을 눈금*으로 사용하여 Date, DateTime 또는 Time 값이 만들어집니다.
입력 포매터를 사용하여 서식 지정
Null.
LongInteger로 값 캐스트
SingleReal로 값 변환
정수 값은 눈금*으로 해석되고, 눈금은 TimeSpan으로 변환됩니다.
값이 1이면 true이고,0이면 false.그 밖의 경우에는 Null.
Real
실수 값의 정수 부분(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
동일한 값
값이 제한 범위에 맞는 경우 10진수로 변환됩니다.그 밖의 경우에는 Null.
정수 부분을 눈금*으로 사용하여 Date, DateTime 또는 Time 값이 만들어집니다.
입력 포매터를 사용하여 서식 지정
Null.
LongInteger로 값 캐스트(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
SingleReal로 값 변환(제한 범위에 맞는 경우).그 밖의 경우에는 Null
정수 부분이 눈금*으로 해석되고 눈금은 TimeSpan으로 변환됩니다.
값이 1이면 true이고,0이면 false.그 밖의 경우에는 Null
Currency/Decimal
10진수 값의 정수 부분(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
실수로 반올림된 10진수(제한 범위에 맞는 경우). Null(그 밖의 경우).
동일한 값
정수 부분을 눈금*으로 사용하여 Date, DateTime 또는 Time 값이 만들어집니다.
입력 포매터를 사용하여 서식 지정
Null.
10진수 값의 정수 부분(제한 범위에 맞는 경우)그 밖의 경우에는 Null.
SingleReal로 반올림된 10진수(제한 범위에 맞는 경우). 그 밖의 경우에는 Null.
정수 부분이 눈금*으로 해석되고 눈금은 TimeSpan으로 변환됩니다.
값이 1이면 true이고,0이면 false.그 밖의 경우에는 Null
Date/DateTime/Time
정수로 변환된 눈금* 수(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
실수로 변환된 눈금* 수.
10진수로 변환된 눈금* 수(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
동일한 값
입력 포매터를 사용하여 서식 지정
Null.
LongInteger로 변환된 눈금* 수(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
SingleReal로 변환된 눈금* 수(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
눈금*을 가져와 TimeSpan으로 변환.
눈금*이 0이면 false.그 밖의 경우에는 True.
String
출력 포매터를 사용하여 구문 분석.구문 분석하지 못한 경우 Null.
출력 포매터를 사용하여 구문 분석.구문 분석하지 못한 경우 Null.
출력 포매터를 사용하여 구문 분석.구문 분석하지 못한 경우 Null.
출력 포매터를 사용하여 구문 분석.문자열이 눈금* 수로 해석됩니다.구문 분석하지 못한 경우 Null.
동일한 값
Null.
출력 포매터를 사용하여 구문 분석.구문 분석하지 못한 경우 Null.
출력 포매터를 사용하여 구문 분석.구문 분석하지 못한 경우 Null.
출력 포매터를 사용하여 구문 분석.구문 분석하지 못한 경우 Null.
출력 포매터를 사용하여 구문 분석.구문 분석하지 못한 경우 Null.
Binary
Null.
Null.
Null.
Null.
Null.
동일한 값
Null.
Null.
Null.
Null.
LongInteger
정수로 값 변환(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
값이 실수로 캐스트됩니다.
값이 제한 범위에 맞는 경우 10진수로 변환됩니다.그 밖의 경우에는 Null.
정수 값을 눈금*으로 사용하여 Date, DateTime 또는 Time 값이 만들어집니다.
입력 포매터를 사용하여 서식 지정
Null.
동일한 값
SingleReal로 값 변환
정수 값은 눈금*으로 해석되고, 눈금은 TimeSpan으로 변환됩니다.
값이 1이면 true이고,0이면 false.그 밖의 경우에는 Null.
SingleReal
SingleReal 값의 정수 부분(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
값이 실수로 캐스트됩니다.
값이 제한 범위에 맞는 경우 10진수로 변환됩니다.그 밖의 경우에는 Null.
정수 부분을 눈금*으로 사용하여 Date, DateTime 또는 Time 값이 만들어집니다.
입력 포매터를 사용하여 서식 지정
Null.
LongInteger로 값 캐스트(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
동일한 값
정수 값은 눈금*으로 해석되고, 눈금은 TimeSpan으로 변환됩니다.
값이 1이면 true이고,0이면 false.그 밖의 경우에는 Null.
TimeSpan
정수로 변환된 눈금 수(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
실수로 변환된 눈금 수(제한 범위에 맞는 경우).그 밖의 경우에는 Null.
값이 제한 범위에 맞는 경우 10진수로 변환됩니다.그 밖의 경우에는 Null.
눈금을 가져와 날짜 값으로 변환.
입력 포매터를 사용하여 서식 지정
Null.
눈금을 가져와 LongInteger 값으로 변환.
눈금을 가져와 SingleReal 값으로 변환.
동일한 값
값이 1이면 true이고,0이면 false.그 밖의 경우에는 Null.
Boolean
true이면 1이고false이면 0.
true이면 1이고false이면 0.
true이면 1이고false이면 0.
눈금 0과 1을 사용하여 날짜 값으로 변환.
입력 포매터를 사용하여 서식 지정
Null.
true이면 1이고false이면 0.
true이면 1이고false이면 0.
눈금 0과 1을 사용하여 TimeSpan 눈금으로 변환.
동일한 값