studying data

문제의 본질을 꿰뚫어 해결책을 찾는 법을 공부합니다

전체 글 46

[AWS 멘토링] 불확실한 미래에 작은 불 하나 켜보자

직업을 고를 때 뭐가 중요할까요? 1. 금전적 보상: 고냥이 사료값을 벌기 위해서요.. 제 자식을 먹여살리고 좀 더 좋은 환경에서 지내게 해주고 싶어요. 충분히 넓은 공간의 집과 안전 보장이 저의 목표! 2. 하루 4시간은 내가 온전히 쓸 수 있을만한 여유시간 보장: 업무시간 외 집중할 수 있는 시간이 필요해요. 운동, 고양이와 함께 시간을 보낼 수 있는 여유가 충분히 보장되면 좋겠네요! 3. 성취감: 내가 이 일을 한다는 데에서 오는 작은 뿌듯함이 정기적으로 있으면 좋겠어요. 아주 작은 일이라고 하더라도 내가 충분히 멋진 일을 하고 있구나라고 느낄 수 있다면 참 좋아요! 커리어플랜 _ 양적연구방법론에도 능통한 연구자가 되어보자! 이번 하반기에 반드시 끝내야 할 것 석사학위 취득 완료! 석사논문 최종 제..

[통계 공부] k-Means 클러스터링

k-Means는 가장 널리 사용되는 클러스터링 방법입니다. k-Means는 k개의 평균이라는 뜻인데 군집의 평균인 중심점을 구할 수 있는 것이죠. 사례를 중심점이 가장 가까운 군집에 포함시킵니다. 장점 단점 k만 정해주면 되므로 간단 거리를 정할 수 잇고, 중심점 주변에 사례들이 몰려있는 경우에 사용할 수 있음 소수의 사례만 무작위로 뽑아 클러스터링할 수도 있음 (미니배치 k-Means) 초기값에 따라 결과가 달라질 수 있음 연속변수에만 적용가능 블록하지 않은 모양의 군집에는 성능이 떠러짐 군집 수 결정이 어려움 이상값에 크게 영향을 받음 극단치가 있는 경우에는 k-Means를 쓰기 전에 미리 먼저 빼줘야 합니다. 이상값에 영향을 크게 받기 때문이죠. PCA, NMP, MDS는 차원축소 방법이라 변수의 ..

[통계 공부] 비지도 학습(unsupervised learning)

주어진 데이터의 내재적 구조를 분석하는데 유용한 틀입니다. 지도학습과 달리 데이터 자체에 정답이 없다는 것이 특징이죠. 종류를 찾아보자면 차원축소와 군집분석이 있습니다. 예를 들어 주식데이터로 살펴볼까요? 주가 경향성을 찾아본다고 하면 네이버와 카카오 주식가격이 같이 떨어진 경우를 생각해봅시다. 네이버와 카카오가 같은 업종이기 때문에 같은 업종이라 비슷한 계열이 하락한다고 하면 이것을 예측하는 것은 지도학습이 됩니다. 있는 데이터 중에서 네이버와 비슷한 주식을 찾아내 업종별로 묶을 수도 있겠죠. 그러나 비슷하다는 기준은 어떻게 정하느냐에 따라 다양할 수 있습니다. 목적과 상황에 따라 적절한 방법이 있어요. 비지도학습은 따로 분석을 하지 않아도 된다는 점에서 강점이 있습니다. 물론 그 설계과정에서 어려움이..

[통계 공부] 로지스틱 회귀분석과 상호작용

A/B 테스팅 데이터를 다운받아 분석을 해보십시오. 독립변수는 weekend와 group을 사용하고 종속변수는 click으로 하여 로지스틱 회귀분석을 해보세요. 모형 1은 click ~ weekend + group로, 모형 2는 click ~ weekend + group + weekend:group으로 분석하세요. 1. AIC와 BIC로 비교할 때 어떤 모형이 더 나은 모형입니까? 정답: 모형 2 해설: 맞다/틀리다 둘 중에 하나로 나눠져야 정확도를 평가할 수 있습니다. 로지스틱 회귀분석은 확률을 예측하기 때문에 맞다/틀리다로 나뉘지가 않습니다. 그래서 문턱값을 기준으로 나누는 것입니다. # 데이터 열기 df = pd.read_excel('abtest.xlsx') # 모형1 from statsmodels..

[통계 공부] 상호작용 - 거짓말 대회

거짓말대회 데이터를 다운받아 회귀분석을 해보세요. 대회 순위(Position)를 종속변수로 하고 창의성(Creativity)과 초보 여부(Novice)를 독립변수로 하여 회귀분석을 해보세요. 이때 상호작용항을 포함시켜 분석하십시오. 1. 상호작용을 고려했을 때 경험자(Novice == 0)는 창의성의 기울기가 얼마입니까? 정답: -0.0349 해설: Position = 3.5618 - 0.0349*Creativity + 1.4920*Novice - 0.0366*Creativity*Novice Novice에 0을 대입하는 경우(경험자), Position = 3.5618 - 0.0349*Creativity 따라서 기울기는 -0.0349 import pandas as pd df = pd.read_excel('..

[통계 공부] 상호작용(interaction)

두 독립변수의 곱으로 이뤄진 항(xm)을 의미합니다. 상호작용은 다른 변수에 의해 기울기가 바뀌는 것을 뜻하죠. 예를 들어 영어를 잘 할 필요가 있는 직무라면 토익 점수와의 관계 그래프가 가파르게 나타날테지만 딱히 업무가 영어 사용과 관련이 없는 경우에는 기울기가 완만하게 나타날 수 있습니다. 상호작용은 쉽게 생각하면 독립변수 2가지를 곱하는 것과 같습니다. 그래서 관계식을 쓸 때는 : 을 사용합니다. 관계식에서 x*m은 x+m+x : m 으로 표현할 수 있습니다. 예를 들어 Learning Style이 있습니다. 언어형은 말로 풀어서 설명하는 것이고 시각형은 그림으로 풀어서 공부하는 것이에요. 사람에 따라 어떤 방법이 더 효과적인지는 다를 수도 있죠. 여기서 학습방법은 xm에 해당합니다. 그러면 후기에..

[AWS 멘토링] ETL(Extract, Transform, Load)을 활용하는 방법

ETL이란 Extract, Transform, Load의 줄임말입니다. 필요한 데이터를 만들기 위해 데이터를 사용자의 목적에 맞도록 가공하는 작업을 이야기합니다. 원하는 데이터를 가져와서 예측값을 보여줄 수 있도록 해주는 것입니다. 추출을 먼저 하고 모니터링 페이지에서 필요한 데이터를 크롤링합니다. 그러면 웹사이트로 되어있는 것 중 필요한 데이터를 딱 맞게 추출하고 원하는 데이터 형태로 변환(transform)합니다. 여기서 가져올 수 있는 데이터는 그 페이지에 맞춰서 데이터화되어있는 것을 가져오면 됩니다. OAD는 적재입니다. 이 과정에서 Airflow를 도입했습니다. 에어비앤비에서 개발한 워크플로우 관리 플랫폼입니다. ETL 툴은 DAG(Directed Acyclic Graph)입니다. 실행하고 싶은..

[빠띠 커뮤니티 실험실] 오리엔테이션 후기

이전에 진행했던 프로젝트에 대해서도 들어봤습니다. 동물해방물결에서는 종평등한 언어생활에 대해 발표했어요. 한국다양성연구소에서는 944프로젝트(9분하여 4는 4람들)을 했습니다. 환경과 동물권, 노동, 장애, 젠더 관점에서 소비를 데이터와 글로 기록해보는 프로그램을 했습니다. 그래서 가치소비를 위한 가이드를 만들어보고 있습니다. 다른 사람과 참여할 수 있는 부분도 열어놓고 모임이 진행된다고 해요. 세번째는 오늘의 행동 실험실입니다. 행동을 제안하는 것인데 이 모임에서는 '코로나 고립감을 낮출 수 있는 행동' 제안을 해서 게더타운 이벤트를 열어봤습니다. 마지막으론 청소년기후행동에서 '위기를 위기로: 키위' 프로젝트를 진행합니다. 기후위기에 대한 지식을 넘어 '나'의 문제로 이야기할 수 있는 공간을 만들어가고..

[python 공부] 기초강의 전체 되돌아보기

파이썬이 왜 배우기 쉽다고 하는걸까요? 처음 배울 때 쉽게 느껴지지 않고 어려울 수 있습니다. 그런데 자바와 비교해볼까요? 똑같은 결과를 만들기 위한 코드 작성 과정이 자바에 비해 파이썬이 훨씬 더 짧고 간결합니다. 분량이 짧으면 괜찮겠지만 기능이 복잡해지면, 몇배로 차이가 날 수 있겠죠? 물론 자바도 객체지향의 시조와 같은 언어로 굉장히 훌륭합니다. 하지만 초심자로서 배우기에는 훨씬 더 진입장벽이 낮은 편이기에 '상대적으로 쉽다'고 하는 것이죠. 그러나 프로그래밍 언어를 처음 해볼 때 어렵게 느껴질 수 있습니다. 변수는 값을 담아놓는 공간이라고 생각할 수도 있습니다. 그러나 reference개념을 알고 있어야 하기 때문에 값을 가리키는 것, 할당하는 것으로 이해하는 것이 좋습니다. 데이터타입에는 여러가..

[python 공부] programmers 코딩테스트 고득점 kit 실패율 문제

슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차이가 너무 큰 것이 문제였다. 이 문제를 어떻게 할까 고민 한 그녀는 동적으로 게임 시간을 늘려서 난이도를 조절하기로 했다. 역시 슈퍼 개발자라 대부분의 로직은 쉽게 구현했지만, 실패율을 구하는 부분에서 위기에 빠지고 말았다. 오렐리를 위해 실패율을 구하는 코드를 완성하라. 실패율은 다음과 같이 정의한다. 스테이지에 도달했으나 아직 클리어하지 못한 플레이어의 수 / 스테이지에 도달한 플레이어 수 전체 스테이지의 개수 N, 게임을 이용하는 사용자가 현재 멈춰있는 스테이지의 번호가 담긴 배열 stages가 매개변수로 주어질..