본문 바로가기

728x90

기타/python

(20)
[Python] 파이썬 pandas dataframe 기본 함수 오늘은 파이썬 데이터프레임을 다룰 때 자주 사용되는 함수들에 대해 알아보도록 하겠습니다. 1. python pandas dataframe import pandas as pd d = {'1': ['a', 'b'], '2': ['c', 'd']} df = pd.DataFrame(data=d) df 1 2 0 a c 1 b d 2. dataframe append df_2 = pd.DataFrame(data=d) df.append(df_2) 1 2 0 a c 1 b d 0 a c 1 b d 3. dataframe to list df.values.tolist() [['a', 'c'], ['b', 'd']] 4. dataframe sort d = {'1': [4,3], '2': [2,1]} df = pd.DataF..
파이썬 워드 클라우드 환경설정부터 기본 사용법까지 워드 클라우드란 문서의 키워드나 개념 등에서 핵심 단어를 시각적으로 돋보이게 하는 방법입니다. 단어의 크기가 클수록 많이 언급된 단어이고 작을수록 적게 언급된 단어입니다. 오늘은 파이썬에서 워드 클라우드를 해보도록 하겠습니다. 우선 관련 패키지인 konlpy를 다운로드 해주세요. pip install konlpy 다음 명령어를 cmd에서 실행하면 다운로드됩니다. konlpy는 자연어를 처리할 수 있는 패키지입니다. 텍스트를 컴퓨터가 연산할 수 있는 형태로 변경해주지요. 다음으로는 JAVA JDK를 설치해주셔야 합니다. www.oracle.com/java/technologies/ 페이지에 방문해 조금만 내리면 다음과 같은 메뉴가 나옵니다. 우측에 있는 JAVA SE 15.0.1을 클릭해주세요. 그러면 아래..
python folium 지도 데이터 시각화 오늘은 지도 데이터를 가져올 수 있는 Folium에 대해 알아보도록 하겠습니다. Javascript라이브러리인 leatlet.js를 이용하여 지도를 시각화하는 라이브러리입니다. leatlet.js는 모바일 친화적인 지도용 오픈 소스입니다. pip install folium 사용방법은 간단합니다. 위의 코드로 라이브러리를 다운로드해줍니다. 구글 지도에 접속해 원하는 위치의 위도와 경도를 알아냅니다. 위와 같이 원하는 곳을 검색하고 그곳에서 오른쪽 마우스를 누르면 위도와 경도가 나옵니다. zoom_start를 통해 얼마나 줌 할지 설정해야 합니다. 1~20까지 가능합니다. 1과 20을 해보도록 하겠습니다. import folium L_tower = folium.Map(location=[37.513415131..
python 주식 데이터 가져오기 오늘은 FinanceDataReader를 통해서 한국/미국 주식, 환율, 비트코인의 가격 데이터를 가져오는 방법에 대해 알아보도록 하겠습니다. 추가적으로 도움이 될 만한 사이트에 대해 알아보도록 하겠습니다. 한국 주식 데이터 가져오기. import FinanceDataReader as fdr import pandas as pd df_krx = fdr.StockListing('KRX') df_KOSPI = df_krx[df_krx['Market']=='KOSPI'] df_KOSDAQ = df_krx[df_krx['Market']=='KOSDAQ'] print(len(df_KOSPI)) print(len(df_KOSDAQ)) KOSPI=list(df_KOSPI['Symbol']) KOSDAQ=list(df_..
파이썬 웹 크롤링 예제 BeautifulSoup은 HTML, XML 문서를 파싱 하기 위한 패키지로 크롤링을 도와줍니다. 파싱이란 문자열을 의미 있는 토큰으로 분해하고 파스 트리를 만드는 것입니다. HTML, XML 문서를 쉽게 분석할 수 있도록 도와준다고 생각하시면 될 것 같습니다. 크롤링이란 웹페이지를 돌아다니면서 정보를 수집하는 것을 의미합니다. BeaitifulSoup과 함께 쓰이는 모듈로는 requests가 있습니다. requests는 html 문서를 가져오도록 요청을 보내는 패키지입니다. 아래와 같이 requests.get을 통해 네이버의 html 코드를 가져오고 beautifulsoup를 통해 html 파싱을 진행합니다. import requests from bs4 import BeautifulSoup naver ..
Matplotlib line plot 기본 예제 matplotlib은 데이터를 그래프로 표현하는 대표적인 시각화 라이브러리입니다. 데이터의 시각화는 그 특성을 파악하는데 필수적이기 때문에 데이터 사이언스에서 자주 사용됩니다. plot이 많이 사용되는데 이것은 데이터를 가상의 공간에 미리 그려놓는 것을 의미합니다. 주로 pyplot모듈을 통해 시각화합니다. 때문에 아래와 같이 import 해줍니다. from matplotlib import pyplot as plt import matplotlib.pyplot as plt 라인, 막대그래프, boxplot, pie, scatter(산포도), 히스토그램 등의 다양한 그래프를 그릴 수 있습니다. 그리기 전에 공통으로 쓰이는 기본 함수에 대해 알아보도록 하겠습니다. plt.plot(리스트 or 판다스 시리즈) ..
파이썬 웹 크롤링 urllib과 BeautifulSoup 예제(2) 전 시간에는 기본적인 사용법을 알아보았다면 오늘은 조금 더 디테일하고 많은 양의 웹데이터를 크롤링하도록 하겠습니다. 우리의 목표는 네이버에서 미국 대선이라는 검색어를 검색했을 때 네이버 뉴스로 된 포맷이 있는 링크만 가져와 보도록 하겠습니다. 분석에 앞서 우선 해당 페이지의 url과 html 코드를 분석해봐야 합니다. 가져오려고 하는 데이터가 가진 특징을 찾아야 하니까요. id, class 같은 것들을 알아야 합니다. 네이버에서 미국 대선을 검색해보도록 하죠. 우리의 미션은 아래와 같은 기사가 있다고 했을 때, 기사 옆에 '네이버 뉴스'라고 되어 있는 부분의 url을 가져오는 것입니다. 다음으로 해야 할 것은 '네이버 뉴스'라고 된 부분이 가진 고유의 특성을 찾는 것입니다. 페이지 검사를 통해 보도록 하..
python 정규표현식 예제 웹 크롤링을 할 때 문자열 탐색을 보다 효율적으로 하기 위해서는 정규표현식 사용이 필수이다. 정규표현식을 사용하면 디테일한 문자열 검색이 가능하다. 아래 예제를 보자 아래 예제는 네이버의 뉴스 카테고리에서 미국 대선을 검색했을 때 'https://news.naver.com/main/read.nhn'로 시작하는 a태그를 가져오는 코드입니다. urlib을 통해 페이지의 html 코드를 가져오고 그것을 bs4를 통해 처리해 a태그만 가져옵니다. 그런 후 정규표현식을 사용해서 문자열을 하나하나 검색하면서 조건에 맞는 링크 정보를 가져옵니다. 이렇듯 디테일한 검색을 위해서는 정규표현식 사용이 필수입니다. '^http(s)?:\/\/(news)\.(naver)\.(com)\/(main)\/(read)\.(nhn)'..

728x90