본문 바로가기

데이터분석48

A/B 테스트를 통계적으로 신뢰할 수 있게 하기 위한 사전 작업들 A/B 테스트를 진행할 때, A그룹과 B그룹의 조건이 동일하지 않다면 실험 결과를 신뢰할 수 있을까? 또한, 실험 대상의 양이 너무 작다면? 실험 결과의 차이가 미미하다면? 이 글에서는 A/B테스트 결과를 신뢰할 수 있는 방법에 대해서 알아볼 것이다. 왜 A/B테스트를 하는가? 현실 세계에서 한정된 자원으로 새로운 아이템의 효과를 검증하기 위한 가장 좋은 방법이기 때문이다. 사례) 오바마 대선 캠프 가족의 모습이 담긴 이미지와 LEARN MORE 버튼은 기존 안 대비 각각 18.6%, 13.1%의 가입률 증가를 보였으며 두 아이템을 조합한 페이지의 경우 40.6% 가입률 증가 여기 A/B 테스트의 더 다양한 성공 사례가 있다. UX/UI 디자이너가 새로운 앱 디자인을 만들었다고 가정해보자. 이 UI를 새.. 2024. 4. 14.
BeautifulSoup을 이용한 정적 크롤링 개념 정리 및 실습 해당 글에서는 BeautifulSoup을 사용해서 정적 크롤링을 하는 방법에 대해서 알아본다. 크롤링 실습을 하기 전에 기본적인 웹 동작 원리에 대해서 알아야 하기 때문에 이론 적인 부분 먼저 설명한다. 대표적인 get과 post 방식 크롤링을 실습한다. 웹 동작 원리 크롤링은 웹사이트의 정보를 수집하는 과정이다. 따라서 웹이 어떻게 동작하는지 이해할 필요가 있다. 클라이언트란 데스크톱이나 휴대폰과 같은 장치이다. 혹은 크롬이나 파이어폭스와 같은 소프트웨어를 의미한다. 서버는 웹사이트와 앱을 저장하는 컴퓨터를 의미한다. 클라이언트가 특정 정보를 요구하는 과정을 요청(Request)이라고 하며, 서버가 해당 정보를 제공하는 과정을 응답(Response)이라고 한다. 클라이언트와 서버가 연결되어있지 않다면 .. 2024. 3. 15.
MySQL 다운로드 및 설치하는 방법 해당 글은 MySQL 다운로드 및 설치하는 방법에 대해 설명된 글입니다. MySQL을 사용하기 위해서는 MySQL Community Server와 MySQL Workbench 2가지를 설치해야 합니다. 이 2가지의 다운로드 및 설치 방법에 대해서 알아보겠습니다.  1. MySQL community Server 설치mysql community server를 검색한 뒤, 해당 사이트에서 아래와 같이 최신버전, OS를 선택하고, MSI Installer의 Download를 클릭한다.(Mac의 경우 DAG, M시리즈 칩이면 ARM)  그런 다음, No thanks, just start my download를 클릭하면, 파일 한개가 다운로드된다.  그 파일을 열어서 다음 순서를 따라 한다.1. Next 2. 'I.. 2024. 3. 10.
윈도우 작업스케줄러로 파이썬 파일 자동화시키는 방법 3가지 파이썬으로 코딩을 했는데, 이 .py 파일을 윈도우에서 원하는 시간대에 자동으로 실행되게끔 자동화시키려면 어떻게 해야 할까? 그 방법은 '작업스케줄러'를 사용하면 된다. 이 걸 사용해서 파이썬 파일을 자동화시키는 방법 3가지에 대해서 알아보겠다. 우선 원하는 주기마다 실행시킬 .py 파일을 만들었다면 다음 순서를 따라 해보자. 1. 작업스케줄러 실행 실행시키면 다음과 같은 화면이 뜨는데, 여기서 '작업 만들기...'를 클릭한다. 2. '일반' 메뉴 세팅 '일반' 메뉴에서 세팅해야 할 건 3가지다. 쉽게 알아볼 수 있는 '이름' 설정 작업을 실행할 때 사용할 사용자 계정 -> Administrators로 변경 '가장 높은 수준의 권한으로 실행' 체크 작업을 실행할 때 사용할 사용자 계정을 Administr.. 2024. 3. 10.
5가지 사례를 통해 알아보는 A/B테스트의 필요성 해당 글에서는 검색엔진 빙(Bing), 넷플릭스, 아마존, Booking.com, 오바마 대선이 A/B테스트를 통해 극적인 성장과 성공을 이룬 사례에 대해서 알아보겠습니다. 목차 검색엔진 빙(Bing) 넷플릭스 아마존 Booking.com 오바마 대선 1. 검색엔진 빙(Bing) 2012년 검색엔진 빙(Bing)과 관련된 작업을 하던 마이크로소프트의 한 직원이 검색엔진에서 광고 헤드라인을 보여주는 방식을 변경하자는 아이디어를 냈다. 아이디어를 실행하는데 기술적으로 어려운 작업은 아니었지만 수백 건의 아이디어 중 하나였기 때문에 우선순위에 밀려 6개월 동안 진행되지 않았다. 마침내 이 아이디어는 진행되었고 프로그램 코드를 짜는데 크게 어렵지 않고 비용도 적게 든다는 사실을 알아내고 한 엔지니어가 효과를 평.. 2024. 3. 8.
[BigQuery] 신규사용자가 첫 접속날짜에 남긴 이벤트만 필터링 이글에서는 user_pseudo_id 또는 user_id를 활용해서 신규사용자가 처음 접속한 당일에 발생시킨 이벤트들만 필터링하는 방법에 대해서 알아볼 것이다. user_id를 수집하고 있지 않은 경우, 사용자를 식별할 수 있는 user_pesuo_id를 사용해야 한다.(user_id 관련 글) 이를 사용하여 사용자가 가장 처음 사이트를 접속한 날짜를 필터링하는 방법을 알아보자. SELECT user_pseudo_id, event_date FROM `프로젝트ID.events_*` WHERE event_name = 'first_visit' 위와 같이 쿼리를 작성하면, user_pseudo_id를 기준으로 'first_visit' 이벤트를 발생시킨 날짜만 필터링되어서 출력된다.('first_visit'는 유.. 2024. 2. 25.
[BigQuery] event_date 날짜 형식 변경 방법 BigQuery의 event_date 날짜 형식을 보면, 20240225 이런식으로 되어있는 걸 볼 수 있다. 이러한 날짜 형식을 변경하고 싶을 때 사용할 수 있는 문법을 정리해봤다. 1. PARSE_DATE(format_string, date_string) 이 함수는 텍스트 형식의 날짜형태를 날짜 형식으로 바꾸는 함수이다. format_string 부분에는 원본 데이터의 날짜형태를 그대로 입력해주어야한다. 예를 들어 event_date의 형태가 20240225이었기 때문에 아래와 같이 %Y%m%d 형태로 작성해주는 것이다. 다른 예시로 event_date의 형태가 24/02/25 였다면, format_string 부분에 %y/%m/%d 형태로 작성해야한다. PARSE_DATE('%Y%m%d',event.. 2024. 2. 25.
퍼스트파티 DB → 파이썬 → 구글 시트 → 슬랙 연결 자동화 방법 이 글에서는 퍼스트파티 DB, 즉 회사 내부 데이터를 SQL로 추출해서 구글 시트에 적재하고, 슬랙에 자동으로 시트의 데이터를 전송하는 과정을 알아볼 것입니다. 이 과정을 파이썬과 Apps Script를 활용하여 전부 자동화시키는 것이 목적입니다. 목차 1. 퍼스트파티 DB, 파이썬 연결 2. 파이썬, 구글 시트 연결 3. 구글 시트, 슬랙 연결 4. 파이썬 자동 실행 방법 1. 퍼스트파티 DB, 파이썬 연결 이 부분은 이전에 포스팅했던 적이 있다. 참고하도록 하자. 파이썬에서 MySQL 쿼리로 DB 데이터 끌어오는 방법 파이썬과 MySQL을 연동하여 DB 데이터를 끌어오는 방법에 대해서 간단하게 알아보겠습니다. 꼭 필요한 코드만 담았습니다. 또한, 끌어온 데이터로 시각화하는 방법까지 공유드리겠습니다 :.. 2024. 2. 3.
파이썬에서 MySQL 쿼리로 DB 데이터 끌어오는 방법 파이썬과 MySQL을 연동하여 DB 데이터를 끌어오는 방법에 대해서 간단하게 알아보겠습니다. 꼭 필요한 코드만 담았습니다. 또한, 끌어온 데이터로 시각화하는 방법까지 공유드리겠습니다 :) 파이썬에 MySQL 연동하는 전체 코드 import pymysql plt.rcParams['font.family'] = 'Malgun Gothic' conn = pymysql.connect(host='localhost', user='root', password='0000', db='main_db', charset='utf8') cursor = conn.cursor() sql = """ select * from user limit 5 """ cursor.excute(sql) data = cursor.fetchall() c.. 2023. 12. 17.
파이썬 웹 크롤링 환경세팅(VScode, miniconda, selenium) 및 예시코드 이 글에서는 크롤링을 위한 VScode, miniconda 환경 세팅부터 Selenium, ChromDriver 자동관리 라이브러리 설치 방법까지 알아볼 것이다. 또한, 실습이 가능하도록 실제로 구글 스토어 댓글을 크롤링하는 코드를 제공한다. 파이썬 코딩을 할 때, 흔히 사용하는 Colab은 크롤링이 실제로 동작하는지 볼 수 없다. 반면 VScode에서는 이를 확인할 수 있다.다만 VScode에서는 .ipynb파일을 실행하려면 파이썬 에디터인 Jupyter Notebook이 필요하다. miniconda는 Jupyter Notebook과 파이썬에서 필요한 최소한의 라이브버리들, 그리고 가상환경을 관리할 수 있게 만들어진 툴이다. 따라서 환경세팅을 위해 VScode와 miniconda를 먼저 다운로드 받아야.. 2023. 12. 10.
MySQL 내장 함수 53가지 정리 (숫자, 문자, 날짜, 논리, 집계) MySQL을 사용할 때, 사용할 수 있는 내장 함수 53가지를 준비했다. 함수 종류가 많아서 하니씩 다 찾아보기 힘든 분들을 위해 카테고리 별로 나눠서 표로 정리했다. 숫자, 문자, 날짜, 논리, 집계 5가지 카테고리로 분류된다. 내용은 예시 SQL문, 실행 결과, 데이터를 가져왔을 때 사용하는 예문으로 구성된다. 각 함수에 대한 설명은 예시에 설명해 놓았다. 숫자 관련 함수 1. ABS(number) -- 예시: 음수의 절대값 계산 SELECT ABS(-15); -- 결과: 15 -- 활용: 테이블의 특정 열에 있는 모든 값의 절대값 계산 SELECT ABS(column_name) FROM table_name; 2. CEILING(number) -- 예시: 소수점 이하를 올림 SELECT CEILING.. 2023. 11. 23.
앱시트 + 구글 스프레드시트로 개인용 앱 만들기 1시간 컷 앱시트와 구글 스프레드시트를 사용하여 개인용 앱을 만드는 방법에 대해 알아보겠습니다. 이 방법은 매우 쉬운 방법으로 개발이 따로 필요 없습니다. 초등학생도 따라 할 수 있는 수준입니다. 조금 숙련이 되면 누구나 1시간 안에 원하는 기능까지 구현이 가능합니다. 구글 스프레드시트의 장점은 클라우드 형태로 저장이 된다는 점입니다. 그렇기 때문에 어떤 기기에서든 접속이 가능합니다. 그래서 앱으로 데이터를 입력할 수 있는 것이죠. 이러한 특징으로 인해 구글 스프레드시트와 앱시트를 사용하면 아주 간단하게 앱을 만들 수 있습니다. 목차 1. 구글 스프레드시트를 생성한다. 2. 필요한 Columns를 정한다. 3. 앱시트로 앱을 만든다. 4. 앱시트를 커스터마이징한다. 5. 구글 스토어에서 앱시트를 설치하고 계정을 연.. 2023. 11. 6.