본문 바로가기

STUDY

(98)
[visualization] 지도 시각화 - folium 소개 및 간단 사용법 파이썬에선 다양한 방법으로 데이터를 시각화 할 수 있다. 대표적으로 Matplotlib, Seaborn등의 라이브러리가 있으며, 보다 interactive한 시각화를 할 수 있는 Plotly도 있다. 하지만 이런건 보통 그래프나, 뭐 시각화 개체 등을 표현할 때 사용하는 라이브러리들이다. 그런데 만약 지도 위에 뭔가 표시하고 싶다, 즉 지도를 보여주고 싶다면? 이럴 때 사용하는 것이 folium이라는 라이브러리다. folium이란? folium은 leaflet.js 기반으로 만들어진 Python 지도 시각화 라이브러리다. (공식 문서) folium을 사용하면 interactive한 지도를 생성하고 마커를 추가하여 시각화하거나 원으로 범위를 표기하고 html 파일로 내보내기 등을 수행할 수 있다. 역시 백..
[Data Preprocessing] - Min Max 정규화 Min Max 정규화는 데이터 전처리 과정 중 Feature scaling 단계를 실행하는 방법 중 하나다. feature scaling이 무엇이며 왜 하는지에 대해서도 작성하고 싶은데, 이는 구글링 해 보면 굉장히 많은 자료가 나오기도 하고, 솔직히 조금 귀찮기 때문에 따로 작성하지는 않을 것이다(나중에 추가로 작성해서 넣을지도??) Min - Max 정규화가 뭔가요? Min-max noramlization는 독립변수들의 값이 0~1 사이에 위치하도록 변경시켜 주는 feature scaling 방법이다. 좀 풀어서 설명해보자면, 최대값과 최소값의 범위 내에서 정규화 할 값이 어느 정도의 위치를 갖는지를 0~1사이의 값으로 바꿔 주는 것이다. 공식은 이렇다. $$\frac{x - x_{min}}{x_{m..
[Pandas] 데이터 그룹별 집계 - NamedAgg 데이터를 그룹별로 집계할 때에 보통 groupby()를 쓰곤 한다. 아래와 같은 데이터프레임이 있다고 하자. 특정 호텔 리뷰 관련 데이터를 웹 스크래핑으로 가져온 것이다(여기 참고). 작성자ID별 리뷰가 몇개인지 알고 싶다거나, 숙박 날짜별 리뷰가 몇개인지 알고 싶다거나 할 때 groupby를 쓰곤 한다. 이런 식으로! groupby와 평균, 개수, 최대, 최소 등등의 집계함수를 사용해 목적에 맞게끔 데이터를 그룹화 할 수 있는데, 동일한 컬럼에 대해 여러 집계 함수를 사용하거나 한 번에 여러 종류의 집계를 하고 싶을 때가 있다. 이럴 때 사용할 수 있는 것이 Pandas의 NamedAgg() 메서드다. 사용법... 이랄 건 딱히 없고 groupby, 집계함수를 사용하는 것과 비슷하다. 집계함수를 어떤 ..
순고객추천지수NPS(Net Promoter Score) 순고객추천지수NPS(Net Promoter Score) NPS란 고객들의 직접적인 피드백을 통해 고객의 전반적인 충성도, 만족도 및 열정을 보여주는 주요 고객 만족도 지표 중 하나로, 고객이 만족할 만한 성과를 거두었는지를 나타낸다. 즉 간단히 말해 브랜드에 대한 고객 충성도를 알 수 있는 지표다. 2003년에 베인앤컴퍼니(Bain & Company)라는 컨설팅 기업에서 만들어낸 개념으로, 지금은 글로벌 기업들이 고객 충성도를 평가하는 가장 표준화된 지표로 자리 잡았다. NPS 피드백 문항은 이런 구성으로 되어 있다. " 우리 서비스를 주변에 얼마나 추천하고 싶으신가요? " NPS 문항은 11점 척도로 구성되고, 총 3개 그룹으로 나뉘며 데이터를 해석하고 활용하는 방법도 조금 다르다. Promoters ..
Ad - Hoc 분석 이 글은 24.02.08에 본인 벨로그에 적은 글을 옮겨온 것이다. Ad Hoc Ad hoc이란? 일반적으로 특정한 목적이나 계획에 따라 미리 정의된 쿼리나 분석이 아니라, 필요에 따라 임시로 데이터를 분석하거나 나타내는 것을 의미한다. 특징 비구조적 : 데이터 미리 정의 없이 활용 가능한 분석 즉각적인 요구 : 긴급 문제 해결 및 특별 질문에 활용 유연성 : 유연한 데이터 접근과 빠른 분석 가능 일회성 : 일회성 작업, 결과물을 재사용하는 경우는 많지 않음. 즉, 주기적으로 들어오는 데이터로 시각화하여 모니터링하는 것과는 다르게 데이터 요청에 따라서 일회성으로 지표를 보는 것. 해야하는 이유 Ad Hoc 분석은 데이터를 통한 의사결정의 핵심 Ad Hoc 분석은 결과 해석과 전략 도출 역량을 향상 예시 ..
[Python] 웹 크롤링 - requests 라이브러리 소개 / "기본" 사용법 웹 크롤링 할 때 쓰이는 파이썬의 requests 라이브러리에 대해 알아보자. requests란 ?? requests란 python용 HTTP 라이브러리이다. Python에서 특정 웹사이트에 HTTP 요청을 보내는 모듈이라 할 수 있다. 쉽게 말하자면 특정 웹사이트에 HTTP 요청을 보내 HTML 문서를 받아올 수 있는 라이브러리인 것. 허나 엄밀히 말하자면 requests로 가져올 수 있는 HTML 문서는 문서가 아닌 그냥 단순한 문자열이고, html parser에 의해 HTML 문서로 바뀌게 된다. html parser에 대해서는 다음 포스팅에 다루도록 하겠다. 백견이 불여일행이라, 직접 설치부터 기본 사용까지 해 보도록 하자. 1. 설치 설치할 필요가 없다. 기본적으로 내장되어 있을 것이다. 허나,..
[Python] html parser - BeautifulSoup HTML parse, parser HTML Parse란 HTML 문법 규칙에 따른 문자열을, 해당 문법을 바탕으로 단어의 의미나 구조를 분석하는 것을 말한다. 그리고, 이렇게 HTML Parse를 행하는 프로그램을 일컬어 HTML Parser라 한다. 파이썬에는 아래와 같이 여러가지 html parser가 있다. 이 중, BeautifulSoup(이하 bs4)에 대해 알아볼 것이다. 설치, import, 사용방법까지. BeautifulSoup 설치, 사용 본격적인 설명에 들어가기 전에 짚고 넘어갈 것이 있다. 위에서 bs4가 parser라고 설명했지만, 사실 parser 그 자체는 아니다. bs4의 역할은 여러가지 parser와 연동 가능한 인터페이스를 제공하는 것이다. 실제로 html을 parsing하..
[Git] Remote repository / Checkout & branch / Merge & Conflict / tag 이 글은 24.01.30에 본인 벨로그에 작성했던 글을 옮겨 온 것이다. Remote Repository(이하 repo) 명령어 Local repo에 Remote repo 추가 가장 중요한 repo를 등록할 때엔 origin이라는 이름을 써 주자. Remote repo 주소 수정 Remote repo 이름 수정 Remote repo 삭제 Remote repo 정보 확인 주의사항. 정보 확인 시 토큰 정보도 확인할 수 있다 => 누구나 접속할 수 있는 PC의 remote repo에 토큰을 입력해 두면 누구나 내 토큰 정보를 확인할 수 있게 되는 것! 보안에 취약할 수 있으니 주의하자. Remote repo 상세 확인 Pull Push 실습 Local repo -> Remote repo 아래와 같은 상황을 ..