Study/Python

파이썬 라이브러리 개념

김 도경 2024. 9. 26. 22:39

[2024.09.26] 필수 온라인 강의 Part2 파이썬 라이브러리 활용 CH01 파이썬 라이브러리 개념

  • 파이썬이란 어떤 언어인가 다시 짚어보기
    - 과학 분야를 위한 표준 프로그래밍 언어, 도메인특화언어+범용언어 장점을 가짐
    - 풍부한 라이브러리, 쥬피터노트북으로 구현가능, 딥러닝 라이브러리가 존재

  • 파이썬과 머신러닝
    - 머신러닝은 파이썬을 추천함
    - 뛰어난 확장성과 연계호환성을 가짐 : 많은 회사에서 사용가능함
    - 기존 Application과 연계가 쉬움 : 앱/웹 둘다 좋음
    - 딮러닝 프레임워크들이 파이썬 기반으로 작성이 됨 : 현 시점 딥러닝 학습 최적의 언어

다양한 라이브러리

  • NumPy
    - 수치 계산 라이브러리
    - Numerical Python의 약자 : 대표적인 수치 해석 라이브러리
    - 선형대수 연산에 필요한 다차원 배열과 배열 연산을 수행하는 다양한 함수 제공
    - pip install numpy
    - import numpy as np     : numpy = np (약속된 약자)
    - https://numpy.org/ 에서 다양한 설명 참고

  • Pandas
    - 데이터 처리 라이브러리
    - 파이썬에서 사용하는 데이터 분석 라이브러리
    - 행과 열로 이루어진 2차원 데이터를 효율적으로 가공할 수 있는 다양한 기능 제공
    - pip install pandas
    - import pandas as pd
    - https://pandas.pydata.org/ 에서 다양한 설명 참고

  • Matplotlib
    - matplotlib은 파이썬에서 데이터를 차트나 플롯으로 시각화하는 라이브러리
    - matplotlib.pyplot 모듈의 함수를 이용하여 간편하게 그래프를 만들고 변화를 줄 수 있음
    - pip install matplotlib
    - import matplotlib.pyplot as plt
    - https://matplotlib.org/ 에서 다양한 설명 참고

  • Seaborn
    - matplotlib기반의  데이터 시각화 라이브러리
    - 유익한 통계 기반 그래픽을 그리기 위한 고급 인터페이스를 제공
    - pip install seaborn
    - import seaborn as sns
    https://seaborn.pydata.org/ 에서 다양한 설명 참고

  • BeautifulSoup
    - 웹 데이터 수집 라이브러리
    - HTML 및 XML에서 데이터를 쉽게 처리하는 파이썬 라이브러리
    - HTML은 태그로 이루어져 있고, 수많은 공백과 변화하는 소스들 때문에 오류가 있을 가능성이 높지
    - 만 BeautifulSoup을 이용하면 이러한 오류를 잡아서 고친 후 데이터를 전달해줌
    - pip install beautifulsoup4
    - from bs4 import BeautifulSoup
    - https://www.crummy.com/software/BeautifulSoup/bs4/doc/ 에서 다양한 설명 참고

  • Scikit Learn
    - 머신러닝 라이브러리
    - 파이썬 기반의 머신러닝을 위한 가장 쉽고, 효율적인 개발 라이브러리
    - 머신러닝은 곧 Scikit-Learn을 의미할 정도로 오랜 기간 파이썬 영역에서 인정 받아 옴
    - R에 비견될 수 있는 Python 세계의 분석 라이브러리
    - 머신러닝을 위한 다양한 알고리즘과 개발을 위한 프레임워크와 API를 제공
    - 회귀모델, 분류모델, 데이터 전처리, 성능 측정 등 머신러닝에 필요한 도구를 두루 갖춤
    - pip install scikit-learn
    - import scikit-learn
    - http://scikit-learn.org/stable/documentation 에서 다양한 설명 참고

통합 개발 환경(IDE, Integrated Development Environment)

  • Python Jupyter Notebook
    - 오픈 소스 기반의 웹 애플리케이션
    - 파이썬으로 작성한 여러 개의 코드와 실행 결과를 하나의 문서처럼 관리 가능
    - 즉, 프로그램 코드 + 결과 + 문서를 위한 대화식 개발 환경
    - 기존의 파이썬 IDLE을 사용하는 것과 비교했을 때, 일부 코드만 실행하여 결과 확인 가능

  • Google Colaboratory (Colab)
    - Googel Colaboratory = Google Drive + Jupyter Notebook
    - 구글 코랩은 주피터 노트북 기반의 오픈소스 프로젝트
    - 구글 코랩의 장점 : 대부분 패키지가 설치, 구글아이디/인터넷만 있으면 사용가능, 구글 드라이브와 연동하여 파일 불러오기, 무료  GPU 사용 가능, 주피터 노트북 문서를 여러사람이 동시에 열어서 함께 편집가능