파이썬 11

pandas와 DataFrame

판다스란?파이썬에서 데이터 처리를 위해 존재하는 가장 인기 있는 라이브러리고수준 API 제공파이썬의 리스트, 컬렉션, 넘파이 등의 내부 데이터 외에도 CSV등의 파일을 쉽게 DataFrame으로 변경해 데이터의 가공/분석을 편리하게 수행할 수 있도록 함 핵심 객체 -> DataFrameDataFrame: Index를 key값으로 가지며  행x열 로 이뤄진 2차원 데이터를 담은 데이터 구조체, 여러개의 Series로 이뤄져있음 eg. DataFrame 생성 - 아래와 같이 딕셔너리를 넣을 수도 있고, 리스트나 NumPy array를 넣을 수도 있음dict_df = pd.DataFrame({ 'category': ['skirt', 'sweater', 'coat', 'jeans'], 'quantit..

Matplotlib 개념 및 간단 예제

Matplotlib이란?: 파이썬의 데이터 시각화 라이브러리로 다양한 종류의 시각화를 지원하며 데이터 분석과 시각화 작업에서 널리 사용된다. 주요 특징다양한 플롯 유형: 선 그래프, 막대 그래프, 산점도, 히스토그램, 파이 차트 등 여러 가지 플롯을 만들 수 있습니다.강력한 커스터마이징: 색상, 스타일, 레이블, 제목 등 그래프의 모든 요소를 세밀하게 조정할 수 있습니다.인터랙티브: Jupyter Notebook과 같은 환경에서 인터랙티브한 플롯을 만들 수 있습니다.출력 포맷: 플롯을 PNG, PDF, SVG 등 다양한 포맷으로 저장할 수 있습니다.통합: NumPy, Pandas, SciPy와 같은 다른 파이썬 라이브러리와 잘 통합됩니다.기본 함수figure() 함수의 figsize 파리미터로 그래프 ..

Numpy 개념과 특징

Numpy: 파이썬 라이브러리로써, Numerical Python 의 줄임말로 수치적인 연산에 최적화된 파이썬 도구이다.  Numpy Array: 자료형, Python List와 유사함, 간결한 코드로 구현, 메모리 및 연산 최적화장점루프를 사용하지 않고 대량 데이터의 배열 연산이 가능 -> 빠른 배열 연산 속도C/C++ 등의 저수준 언어 기반 호환 API제공 -> 기존 C/C++ 기반 외부 프로그램과 호환 용이단점가독성이 떨어짐정보에 대한 레이블 삽입 불가한 가지 데이터 타입만 사용 가능다양한 API 지원 측면이 어려움 import numpy as np # 'as np' 를 약어로 추가하여 모듈을 표현하는 것이 관례ndarray란?: 넘파이 기반 데이터 타입이며, ndarry를 이용해 넘파이에서 다차원..

def() 함수를 더 간결하게 작성할 수 없을까? '람다(lambda)'

처음에 람다(lambda) 함수를 들었을 때, 이름부터 생소해서 굳이 사용하지 않고 있었는데이번 강의 중에 람다(lambda) 함수를 배우면서이렇게...간단하게 함수를 작성할 수 있구나를 알게 되면서적극 익히려고 하고 있음 그래서 람다(lambda) 함수란? (*파이썬 공식 문서: Python Lambdas)lambda_expr ::=  "lambda" [parameter_list] ":" expression람다(lambda) 표현식(람다 폼이라고도 함)은 익명 함수를 만드는 데 사용됩니다. 표현식은 함수 객체를 생성합니다. 명명되지 않은 객체는 다음으로 정의된 함수 객체처럼 동작합니다.def (parameters):    return expression매개변수 목록의 구문은 함수 정의 섹션을 참조하세..

API 통해 데이터 수집(feat. 크롤링은 지양한다..)

데이터 수집 방법크롤링: 추천 x (*불법 소지 다분함, 최근까지도 다수 기업의 법적 분쟁 사례 있음)크롤링의 최종목표: 웹데이터를 DataFrame으로 변환API: 추천 o (*고비용, 이용 제한 x, 이용매뉴얼만 잘 익히면 API 크롤링 완)부동산 데이터 수집(서울시 빅데이터 센터, 공공데이터 포털) https://data.seoul.go.kr/together/guide/useGuide.do공공데이터 요청 시, 응답할 때 두가지 컨셉으로 응답 (XML, JSON)일괄처리 함수 만들기 (처리.py)자동 적용배치 처리 윈도우에서는 스케쥴러 프로그램Linux에서는 Crontab 설정해당 스크립트 (처리.py)가 정해진 시간에 코드가 돌아감웹 스크래핑 시, 주의점1. 어떤 웹 페이지를 스크래핑 하고자 한다면..

가상환경 세팅하기

가상환경 세팅은 뭐 하나 안맞으면에러나서 골때림# 가상환경 세팅 (*가장 중요! + test폴더는 git에 올리지 않도록 세팅)1. Github 폴더 생성2. git clone # 깃 클론3. Git-Bash로 접속4. virtualenv venv # 해당 폴더에 가상환경 세팅5. conda deactivate # conda 비활성화6. source venv/bin/activate # venv 활성화(*mac은 bin 넣어줘야함, winows는 다름)7. pip install -r requirements.txt (# .txt에 필요한 내용들 eg. numpy pandas matplotlib seaborn plotly scikit-learn jupyterlab 들 넣고 저장)8. 깃헙에서 다운로드 받은 소..

반복문

리스트란? 파이썬에서 리스트의 의므는 여러가지 자료를 저장할 수 있는 자료리스트 생성 방법: 대괄호[]에 자료를 쉼표로 구분하여 입력함요소: 대괄호[] 내부에 넣는 자료인덱스: 대괄호[] 안에 들어간 숫자리스트 사용 방법대괄호 안에 음수를 넣어 뒤에서부터 요소 선택list_a = [273, 32, 103, "문자열", True, False]list_a[-1]Falselist_a[-2]Truelist_a[-3]'문자열'2. 리스트 접근 연산자를 이중으로 사용 가능list_a = [273, 32, 103, "문자열", True, False]list_a[3]'문자열'list_a[3][0]'문'3. 리스트 안에 리스트 사용 가능list_a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]list_..

조건문

파이썬에서 True, False의 첫 글자는 반드시 대문자로 적어야 함불 자료형과 if 조건문# 불 만들기: 비교 연산자 (*숫자 or 문자열에 적용 가능)== 같다!= 다르다 크다= 크거나 같다# 불 연산하기: 논리 연산자not 아니다: 불을 반대로 전환and 그리고: 두개 모두 참일 때 True, 그 외는 모두 Falseor 또는: 하나만 참이라도 True, 두개 모두 거짓일 때 False# not 연산자단항 연산자이며, 참과 거짓을 반대로 바꿀 때 사용# and 연산자와 or 연산자and: 양쪽 모두 참일 때만 Trueor : 둘중 하나만 참이어도 True# if 조건문if 조건문 구조if 불 값이 나오는 표현식: # if의 조건문 뒤에는 반드시 콜론(:)을 붙여야 함 불 값이 참일 때 실행할 문장..

자료형

자료형과 문자열# 자료형 확인type() 함수 사용>>>print(type("안녕하세요"))>>>print(type("273"))# 문자열 만들기큰/작은 따옴표: "", ''이스케이프 문자: 역슬래시(\)와 함께 사용하는 특수 문자 \": 큰따옴표를 의미함 \': 작은따옴표를 의미함 \\: 역슬래시(\)를 의미함>>>print("\"안녕하세요\"라고 말했습니다.")"안녕하세요"라고 말했습니다.>>>print('\'배가 고픕니다\'라고 생각했습니다.')'배가 고픕니다'라고 생각했습니다.>>>print("\\ \\ \\ \\")\ \ \ \# 여러 줄 문자열 만들기1. 이스케이프 문자 중, \n 을 이용 시 줄바꿈이 가능함2. """ 이용 시, Enter 입력 값이 모두 줄바꿈으로 변경됨# 줄바꿈 없..

개발 환경 세팅하기+기본 개념 with 파이썬

#스네이크 케이스: 단어 사이에 언더 바(_) 사용snake_case#캐멀 케이스: 단어의 첫 글자를 대문자로 사용CamelCase2일차부터는 '파이썬 시작하기' 책을 바탕으로 수업이 진행되었으나부득이하게 초반 며칠은 오프라인 수업 참여가 불가하여 혼자 복습해오기로 했다.  개발 전용 폰트 설정하기코딩 전용 글꼴은 oO0 / lI|(소문자 엘, 대문자 아이, 기호 |)이 모두 구분됨고로코딩 전용 글꼴을 설치해준다.나눔고딕 코딩 글꼴: https://github.com/naver/nanumfont GitHub - naver/nanumfontContribute to naver/nanumfont development by creating an account on GitHub.github.com파이썬 IDLE ..