본문 바로가기

전체 글

(37)
데이터프레임 불러오기 3 - 데이터베이스에서 직접 불러오기: DBI & RSQLite 지난 글에서 RODBC패키지를 사용한 데이터프레임 불러오기를 알아봤다. 만약 데이터베이스가 MS SQL(SQL Server), MySQL, Oracle 등 RDBMS가 아니고 SQLite라면 어떻게 해야 할까? RDBMS RDBMS는 Relational Database Management System이고, 일반 DBMS의 단점을 보완하기 위해 만들어졌다. 즉, 그냥 파일 형태로 데이터를 저장하기만 하면 각 파일들이 어떻게 서로 영향을 주고받는지 확인하기 힘드니, 방법을 생각해 낸 게 RDBMS이다. RDBMS는 데이터를 테이블 형태로 저장하고, 각 테이블에 primary key를 만들어서 테이블 간 공통으로 사용될 수 있는 key값을 만들어 서로 연결할 수 있게 해 준다. RDBMS의 예로는 Oracle..
데이터프레임 불러오기 2 - 데이터베이스에서 직접 불러오기: RODBC 이전 글에서 데이터프레임 또는 데이터세트를 불러오는 방벙에 대해서 다루었다. 가장 기본적인 CSV파일을 직접 하나하나 불러오는 방법, CSV파일이 들어있는 폴더를 한꺼번에 불러와서 하나의 리스트에 넣어놓고 사용하는 방법, R이 기본적으로 제공하고 있는 데이터세트를 사용하는 방법 등을 Sean Lahman의 Baseball Database를 예로 설명하였다. https://double-d.tistory.com/27 R: 데이터프레임 불러오기 1 (CSV파일, R기본 데이터세트) 오랜만에 이전 포스팅에 가 보았다. (https://double-d.tistory.com/18) 데이터베이스 예제로 Sean Lahman의 Baseball Database를 소개한 글이었다. 링크로 남겨두었던 웹사이트에 가보니 연결..
맥북에서 SQL 시작하기: DBngin 사용 윈도우 PC 사용자는 마이크로소프트의 SQL Server를 설치하면 Server Instance를 쉽게 생성할 수 있다. 서버 인스턴스 Server Instance(서버 인스턴스)란 무엇인가. 아래는 마이크로소프트의 웹사이트에서 발췌한 내용이다. 인스턴스 데이터베이스 엔진 인스턴스는 해당 인스턴스에서 관리하는 데이터베이스에 있는 데이터에 대한 애플리케이션의 모든 작업 요청을 처리하는 서비스로 작동되며, 애플리케이션에서 보내는 연결 요청 (로그인)의 대상이 됩니다. 애플리케이션과 인스턴스가 개별 컴퓨터에 있는 경우 연결은 네트워크 연결을 통해 실행됩니다. 애플리케이션과 인스턴스가 동일한 컴퓨터에 있는 경우 SQL Server 연결은 네트워크 연결 또는 메모리 내 연결로 실행될 수 있습니다. 연결이 완료되면..
데이터프레임 불러오기 1 - CSV파일, R기본 데이터세트 오랜만에 이전 포스팅에 가 보았다. (https://double-d.tistory.com/18) 데이터베이스 예제로 Sean Lahman의 Baseball Database를 소개한 글이었다. 링크로 남겨두었던 웹사이트에 가보니 연결이 되지 않는다. 구글링을 해보니 다행히 웹사이트는 그대로 있다. 다만 공유하는 데이터베이스 형태가 줄어들었다. 예전에는 sql light버전 및 다양한 형태로 제공되었는데, 이제는 MS Access 형태와 CSV만 제공된다. 윈도우 사용자의 경우 MS Access 파일인 .mdb를 다운받아 사용할 수 있다. 하지만 맥 사용자는 CSV 파일만 사용이 가능하다. 이번 글에서는 업데이트된 Sean Lahman의 웹사이트 기준으로 데이터를 R 로 불러오는 여러 방법에 대해서 알아보자..
데이터 샘플링: 왜, 언제 해야 하는가 지난 글(데이터 샘플링: 통계적 및 비통계적 샘플링 방법)을 쓰고 난 후에, 샘플링이 왜 필요한지에 대한 감이 잘 오지 않을 것 같아 그 필요성 및 어떻게, 언제 사용되는지 추가로 글을 쓰기로 했다. 했던 말들의 반복도 조금 있겠지만, 샘플링의 중요성은 무시할 수 없다. 특히 데이터 분석은 여러 단계를 거친 후에야 실질적인 인사이트를 도출해 낼 수 있는데, 이때 데이터 샘플링은 대부분의 단계들에 선행하는 매우 중요한 단계 중 하나이다. 데이터 샘플링은 왜 필요할까 데이터 샘플링이 왜 필요한지 당연할 수도 있는 것들이지만 되짚어 보자. 시간 및 비용 제약 극복 : 대규모 데이터를 다룰 때, 샘플링을 하면 시간과 비용을 절약할 수 있다. 데이터 사이즈가 커질 수록 전체 데이터를 모두 수집하고 분석하는 것은 ..
데이터 샘플링: 통계적 및 비통계적 샘플링 방법 데이터 샘플링(표본추출)은 많은 양의 데이터를 대상으로 분석 작업 수행 시, 전체 데이터가 아닌 일부를 ‘샘플(표본)’로 선택하여 전체 데이터를 대표하게 하는 작업이다. 이 샘플링은 처리할 데이터의 양이 많을 때 반드시 필요한 중요한 단계이다. 샘플링은 통계에서 나온 개념이다. 사실 통계가 나온 중학교 2학년 때부터 수학이 싫어졌던 경험이 있는 사람으로서, 자세한 내용은 별로 관심이 없다. 하지만 자세한 내용을 모른다고 분석 업무를 못하는 건 아니니, 이런 게 있다고 아는 정도로 이해하고 넘어가자. 데이터 샘플링 방법은 크게 통계적 기법을 기반으로 한 샘플링과, 비통계적 기법을 기반으로 한 샘플링이 있다. 샘플링 종류 방법 장점 단점 데이터 분석에서의 사용빈도 통계적 단순 랜덤 모집단에서 무작위 추출 편..
데이터 구조: 배열, 목록 및 테이블 데이터 구조는 컴퓨터 프로그램에서 데이터를 저장, 구성 및 액세스 할 때 데이터를 구성하는 방식을 의미한다. 데이터 분석 업무를 하다 보면, 다양한 데이터 구조를 사용하여 대규모 데이터 세트를 저장, 처리 및 분석하게 되며, 상황에 맞게 적절한 데이터 구조를 선택해야 한다. 그래야 최적화된 속도와 결과를 얻을 수 있다. 이번 글에서는 일반적으로 사용되는 세 가지 데이터 구조(배열, 목록 및 테이블)를 살펴보고 데이터 분석의 맥락에서 각각의 차이점과 예시에 대해서 알아보려 한다. 또한, 아직 다른 글에서 다루지 않은 R 과 Python의 코딩들도 예시로 보여주려 하니, 대략적인 감을 잡는 참조용으로만 보길 바란다. 각 언어별로 데이터 구조에 대한 용어가 약간 상이할 수 있으며, 코딩 방법도 다른데, 구체적..
데이터 유형: 숫자, 범주 및 순서 데이터의 이해 다양한 유형의 데이터(data type)를 이해하는 것은 데이터 분석의 결과를 정확하게 해석하는 데 중요한 요소이다. 실무를 하다 보면 어이없는 에러의 원인이 데이터 유형에 대한 무지인 경우가 적지 않다. 그러니 나중에 에러의 원인을 찾느라 고생하기 전에 데이터 유형에 대해 잘 알아보자. 아래 글을 통해 세 가지 주요 데이터 유형(숫자형, 범주형 및 순서형)을 살펴보고 각 데이터 유형이 데이터 분석에 미치는 영향을 더 잘 이해하는 데 도움이 되도록 예시들과 함께 알아보자. 데이터유형 정의 예시 숫자형 (Numeric) 연속 (Continuous) 나이, 키, 몸무게, 급여 등과 같이 정의된 범위 내에서 모든 값을 가지는 유형 신장(cm), 급여($) 등 이산 (Discrete) 가족의 자녀 수, 집의 방..