전체 글 166

[R] 데이터프레임 관련 함수 및 코드

아래는 R에서의 데이터프레임 관련 기본 함수들과 코드를 작성해 놓은 것이다. 함수 코드 ncol(df) data frame 열의 개수 nrow(df) data frame 행의 개수 dim(df) data frame 열 및 행의 개수 length(df) data frame 변수 개수 names(df) data frame 열 이름 rownames(df) / row.names(df) data frame 행 이름 colnames(df) / col.names(df) data frame 열 이름 ls(df) 칼럼명 확인 dataframe[c(1, 2), ] 1, 2행 dataframe[c(1, 2, 3)] 1, 2, 3열 head(df, 5) 데이터 앞부분 값 확인 tail(df, 5) 데이터 뒷부분 값 확인 # ..

[R] 연습 2022.04.17

[Excel] 엑셀에서 다른 시트, 다른 문서로 가는 링크 만들기

엑셀을 활용하면서 여러 시트에 걸쳐 작업을 하다보면 해당 엑셀 파일의 다른 시트나 작성 중인 다른 문서로 손 쉽게 이동할 수 있는 링크를 만들고자 하는 경우가 있습니다. 오늘은 이 방법에 대해 알아보고자 합니다. 링크 만들기 아래와 같은 엑셀 파일에서 B4셀에 연습시트2로 이동할 수 있는 링크를 만들고자 합니다. 이 때, B4셀을 선택한 후, 단축키 [Ctrl + K]를 누르거나 상단의 [삽입]탭에서 [링크]를 선택해줍니다. 아래와 같이 하이퍼링크 삽입 창이 뜨면, 선택 메뉴 중에 [웹 페이지 또는 파일], [이 문서], [전자 메일 주소]가 있는데, [이 문서]를 선택하고 연결하고자 하는 시트를 선택해줍니다. [확인] 버튼을 누르고 다시 원래 시트로 돌아와 보면, 해당 위치에 링크가 생성된 것을 볼 수..

워크시트 2022.04.16

[Python] 결측값 처리하기(dropna)

결측값이 있는 행이나 열을 삭제하고자 하는 경우에는, dropna() 함수를 사용하면 된다. DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False) Parameter 설명 axis 0 또는 'index'로 하면, 행에 대한 제거 (디폴트) 1 또는 'columns'로 하면, 열에 대한 제거 how 'any'는 행 혹은 열 방향으로 결측값이 하나라도 있으면 제거 (디폴트) 'all'은 모든 값이 결측값이면 제거 thresh 최소 n개가 결측값이 아니면 그 행(또는 열)을 제거하지 않음 예를들어 thresh = 4로 지정하면 그 행(또는 열)에 최소한 4개의 값은 결측값이 아닌 경우를 제외하고 나머지는 다 제거 subset 특..

[Python] 연습 2022.03.27

[Python] Series

파이썬에서의 Series는 어떤 데이터 타입이든 보유할 수 있는 1차원 배열 자료구조이다. Series는 index, value, data type 집합으로 구성되고 리스트 자료형으로 생성이 가능하다. # Series를 생성하기 위해서 pandas를 먼저 import한다. import pandas as pd # Series 생성 mySeries1 = pd.Series([2, 6, 4, 8]) print(mySeries1) 위의 결과를 보면 각 값에 대한 index는 0, 1, 2, 3으로 부여된 것을 알 수 있다. 아래와 같이 index, value, dtype에 대한 내용도 확인이 가능하다. # Series에 저장된 값 확인 print(mySeries1.values) # 결과:[2 6 4 8] # In..

[Python] 연습 2022.03.26

[Python] 데이터 정규화

데이터를 분석하다보면 정규화가 필요한 경우를 종종 마주하게 된다. R에서도 정규화에 대한 내용을 다루었지만 파이썬을 이용해서 정규화를 쉽게 하는 방법에 대해서 알아보고자 한다. scikit-learn의 MinMaxScaler를 통해서 정규화 하는 예시는 아래와 같다. from sklearn.preprocessing import MinMaxScaler data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]] scaler = MinMaxScaler() print(scaler.fit(data)) # 결과: MinMaxScaler() print(scaler.transform(data)) # 결과: [[0. 0. ] [0.25 0.25] [0.5 0.5 ] [1. 1. ]] 처음에는 Mi..

[Python] 연습 2022.03.25

[Excel] 엑셀 중복 데이터 제거

엑셀을 다루다보면 하나의 열에서 고유한 값들만 보고싶은 경우가 있습니다. 따라서 이번에는 열안에서 중복된 항목을 제거하여 쉽게 고유값만 볼 수 있도록 하는 방법에 대해서 알아보겠습니다. 아래와 같은 예시 데이터가 있다고 하면, 회원ID, 회원등급, 생년월일이 모두 일치하는 경우에 대해서 중복된 행을 제거할 것입니다. 데이터 전체를 범위로 지정해주고(이때, '회원ID'와 같은 열 머리글이 포함되어도 상관 없습니다), 상단 [데이터] 메뉴 → [중복된 항목 제거] 를 선택합니다. 만약 데이터의 범위가 커서 전체를 선택하기 어렵다면 마우스로 드래그 하는 것 보다 단축키를 이용하는 것이 낫습니다. Ctrl + A를 누르면 데이터가 입력된 전체 범위를 선택합니다. 혹은 Ctrl + Shift + 방향키를 사용해도..

워크시트 2022.03.20

[Tableau] 나이 계산하기

이번 태블로 포스팅에서는 고객의 나이를 알아보는 방법에 대해서 다루고자 합니다. 사용한 태블로 버전: Tableau Desktop 2021.4 사용한 데이터: 예시 구매내역 데이터 목표 화면: 아래 목표 화면은 각 회원별 나이에 대한 테이블입니다. 시작하기 전에: 원본 예시 데이터는 아래와 같이 각 회원의 '회원ID', '생년월일' 등의 컬럼으로 구성되어 있습니다. 방법1: 나이를 연도로만 계산하려면 DATEDIFF 함수를 사용해서 계산된 필드를 생성해주면 됩니다. 1-1. 아래와 같이 계산된 필드를 생성합니다. DATEDIFF 함수를 활용해서 [생년월일]과 #2022#년도 사이의 'year'연도의 차이를 계산합니다. 예를 들어 1995년 11월 24일생인 JJ3840 회원은 2022년에 27세로 계산됩..

[Tableau] 연습 2022.03.19

[Tableau] 고객 첫 구매일, 첫 구매 상품 계산하기

이번 태블로 포스팅에서는 고객의 첫 구매일, 첫 구매 상품을 알아보는 방법에 대해서 다루고자 합니다. 사용한 태블로 버전: Tableau Desktop 2021.4 사용한 데이터: 예시 구매내역 데이터 목표 화면: 아래 목표 화면은 각 회원별 첫 구매 일자와 당시 구입한 상품에 대한 테이블입니다. 시작하기 전에: 원본 예시 데이터는 아래와 같이 각 회원의 '결제일시', '구매상품', '회원등급', '회원ID' 컬럼으로 구성되어 있으며, 각 결제일시는 섞여있어서 바로 파악하기가 쉽지 않습니다. 1단계: 첫 구매 일자를 계산하는 필드를 생성해줍니다. 1-1. 아래와 같이 계산된 필드를 생성합니다. 회원ID 차원만 활용하여 결제일시에 대한 최소값(MIN)을 계산해주면 각 회원에 대한 최소 결제일, 즉 첫 구매..

[Tableau] 연습 2022.03.18

[Tableau] 막대그래프 내부에 데이터레이블 표시하기

이번 태블로 포스팅에서는 막대그래프 내부에 데이터레이블을 표시하는 방법에 대해서 다루고자 합니다. 사용한 태블로 버전: Tableau Desktop 2021.4 사용한 데이터: Sample - Superstore 목표 화면: 아래 목표 화면에는 데이터 레이블이 막대 상단 안쪽에 위치해 있으며, 각 막대의 축 레이블도 아래쪽에 위치한 것을 알 수 있습니다. 시작하기 전에: 태블로에서 기본적으로 레이블 설정에서도 데이터 레이블의 위치를 바꿀 수 있습니다. 마크카드 - 레이블 - 맞춤 에서 바꿀 수 있습니다. 하단 레이블 중간 레이블 상단 레이블 하지만, 목표화면처럼 상단레이블이 바 차트(Bar Chart) 내부에 위치하도록 하기위해서는 직접 설정해줘야 합니다. 1단계: 먼저 막대 그래프가 아닌 간트 차트를 ..

[Tableau] 연습 2022.03.13

[Python] 판다스 특정 문자열 포함 판단하기

이번 포스팅에서는 데이터프레임의 열에 특정 문자열이 포함되었는지를 판단하고, 이 조건에 해당하는 행만 출력하는 방법을 알아보겠습니다. 이러한 경우에 사용할 수 있는 것이 str.contains( )입니다. 아래와 같은 예시 데이터를 통해서 코드를 실행해보겠습니다. 1. 하나의 열에서 특정 문자를 포함한 레코드만 출력하기 # 구매상품에 '투자'가 있는 레코드만 출력 df[df['구매상품'].str.contains('투자')] 구매상품에 '투자'라는 단어가 포함된 서적만 출력되었음을 알 수 있습니다. 2. 하나의 열에서 특정 문자를 포함한 레코드의 수를 구하기 # 구매상품에 '투자'가 포함된 레코드 수를 구하는 방법 len(df[df.구매상품.str.contains('투자')]) # 결과: 4 레코드의 수를..

[Python] 연습 2022.03.12

[Python] 판다스 문자열 구분자로 나누기

파이썬 판다스에는 문자열을 다룰 수 있는 여러 함수가 존재합니다. 그 중에서 자주 사용할 수 있는 것이 split()일 것입니다. str.split('구분자') 형식을 사용하면 쉽게 컬럼을 나눌 수 있습니다. 4가지 방법을 아래의 예시를 활용하여 연습해보겠습니다. 일단 아래의 예시 데이터를 가운데 공백을 구분자로 하여 '년월일'과 '시분' 정보로 구분해보겠습니다. - 방법1 이 방식은 문자열을 구분하여 발생하는 새로운 열을 직접 데이터프레임에 붙입니다. df['년월일'] = df['회원가입 정보'].str.split(' ').str[0] df['시분'] = df['회원가입 정보'].str.split(' ').str[1] df - 방법2 이 방법은 문자열을 구분하여 새로운 데이터프레임 형태로 바로 생성합니..

[Python] 연습 2022.03.11

[책 서평] AI, 빅데이터 활용이 쉬워지는 142가지 데이터셋

데이터 분석을 하다 보면 적절한 데이터셋을 찾는 것도 일이다. 목적에 맞는 데이터를 어디서 얻을 수 있는지도 모를뿐더러 사용할 만한 데이터셋이 존재하는지 조차도 모를 수 있다. 특히나 품질 좋고 깔끔한 데이터셋을 구하는 일은 시간 소모도 꽤 크다. 이번에 도서를 생능북스에서 제공받아 읽어보고 책 서평을 작성하게 되었다. 프로젝트를 진행할 때면 항상 구글에서 탐색하느라 힘들었는데, 마치 가뭄의 단비 같은 책처럼 느껴졌다. 이 책이 소개하고 있는 데이터셋 종류가 다양해서 많은 분석가에게 도움이 될 수 있을 것 같다. 특히 영상, 자연어처리, 소리에 대한 분야라면 더 관심을 가져볼만하다. 자연어처리에 대한 데이터셋을 몇 개 찾아봤는데, 관련 흥미로운 논문들도 있어서 어떤 방식으로 활용할 수 있을지 등에 대해서..

리뷰 2022.03.06

[Tableau] 하나의 차트에서 여러 측정값의 표현

이번 태블로 포스팅에서는 여러 측정값을 하나의 차트에 표현하고 싶은 경우에 활용할 수 있는 방법에 대해서 다루고자 합니다. 사용한 태블로 버전: Tableau Desktop 2021.4 사용한 데이터: Sample - Superstore 목표 화면: 아래의 예시 화면은 고객별 매출과 제품별 매출을 내림차순 정렬하였고, 반면 각 막대의 색상은 각 고객이나 제품이 회사에 높은 수익률을 주었는지를 표현한 것입니다. 따라서 파란색이 짙을수록 회사에 많은 수익을 안겨준 고객 혹은 제품을 의미하고 빨간색이 짙을수록 적은 수익을 주는 것으로 해석할 수 있습니다. 이렇게 표현하면 여러 차트를 그리지 않고 두 가지 의미를 담아낼 수 있게 됩니다. 1단계: 먼저 가장 간단하게 고객별 매출 차트를 그릴 것입니다. 1-1. ..

[Tableau] 연습 2022.03.05

[GA] 구글 데이터 스튜디오

개요 구글 데이터 스튜디오(Data Studio)는 구글 마케팅 플랫폼 안에서 데이터 시각화(Data Visualization)을 담당하는 툴이다. 데이터 시각화 → 얻어낸 정보를 다른 사용자들에게 빠르고 직관적으로 전달하도록 한다. 데이터 스튜디오는 보고 단계에서 보고, 보고서 자동화, 모니터링이나 이슈 확인에 사용할 수 있고 KPI를 기반으로한 개선점 파악으로 성장에 기여할 수 있다. Google Analytics의 대시보드와 Data Studio의 대시보드를 비교 구분 GA 대시보드 Data Studio 대시보드 장점 GA 보고서와 함께 보기 쉬움 템플릿 및 데이터 공유 가능 레이아웃 자유롭게 변경 가능 다양한 데이터 소스의 시각화 가능 단점 템플릿만 공유하고 데이터는 공유할 수 없음 레이아웃 변경..

워크시트 2022.03.03