일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 최대가능도 추정법
- namedtuple
- 표집분포
- 카테고리분포 MLE
- Array operations
- subplot
- VSCode
- Comparisons
- scatter
- 부스트캠프 AI테크
- type hints
- Python 유래
- ndarray
- groupby
- seaborn
- boolean & fancy index
- BOXPLOT
- 딥러닝
- dtype
- Operation function
- Python 특징
- Numpy data I/O
- 가능도
- Python
- pivot table
- python 문법
- Numpy
- 정규분포 MLE
- unstack
- linalg
- Today
- Total
목록부스트캠프 AI 테크 U stage (112)
또르르's 개발 Story

Pandas는 panel data의 줄임말로 파이썬의 데이터 처리의 사실상 표준인 라이브러리입니다. Python의 pandas는 통계 프로그램인 R하고 비슷하다는 소리를 많이 듣는데요. pandas의 객체 생성과 함수들을 정리해보았습니다. 1️⃣ Pandas 개요 1) Pandas 특징 구조화된 데이터 처리를 지원하는 Python 라이브러리 Numpy와 통합하여 ndarray를 사용할 수 있고, 강력한 "스프레드시트" 처리 기능 제공 인덱싱, 연산용 함수, 전처리 함수 등 제공 데이터 처리 및 통계 분석을 위해 사용 2) 스프레드시트 구성요소 Data table, Sample : Data Frame 표 전체를 말함 attribute, field, feature, column : 열(column)의 이름을..

경사하강법은 1차원, 2차원.. 다차원의 그래프에서 최솟값(극소값)을 찾아가는 방법을 말합니다. 아래 그림과 같이 다차원의 그래프에서 가장 오목하게 들어간 부분(최솟값)을 찾아가는 과정이라는 것이죠. 경사하강법을 정리하게 전에 미분부터 알아야 합니다. 1️⃣ 미분(Differentiation) 미분(differentiation)은 변수의 움직임(그래프)에 따른 함수값의 변화(기울기)를 측정하기 위한 도구로 수학에서 정의합니다. 미분은 $f^{'}$으로 표시하며 아래 식으로 표현됩니다. 다항식의 경우, 아래와 같이 표현할 수 있습니다. $$ f(x) = x^2 + 2x +3$$ 미분 공식을 사용하게 되면 아래 다항식으로 변경됩니다. $$f^{'}(x) = 2x + 2$$ Python에서는 sympy 모듈을..

05-1에서는 머신러닝의 가장 기본이 되는 벡터와 행렬을 정리해보겠습니다. 작성하면서 Python의 numpy에서 어떤 함수로 사용되는지를 함께 정리하겠습니다. (강의 내용 정리...) 1️⃣ 벡터(Vector) 벡터(vector)는 숫자를 원소로 가지는 리스트(list) 또는 배열(array)라고 말할 수 있습니다. 또한, vector는 세로형태의 열 벡터와 가로형태의 행 벡터로 나눌 수 있습니다. 수학적인 벡터의 정의는 공간에서 한 점을 나타내며, 원점으로부터 상대적인 위치를 표현한 것을 말합니다. 아래 그림과 같이 X는 1차원, 2차원, 3차원에서 하나의 점이며, 원점으로부터 방향이 있습니다. 1) 벡터의 덧셈 두 벡터의 덧셈은 다른 벡터로부터 상대적 위치 이동을 표현합니다. 즉, 아래의 그림처럼 ..

Python에서 머신러닝, 딥러닝을 수행하기 위해서 행렬 연산, 매트릭스 연산이 필수적입니다. numpy는 파이썬의 이학/공학 계산용 패키지를 제공해주며, Matrix와 Vector연산에서 사실상의 표준 라이브러리입니다. numpy의 특징은 dynamic typing을 사용하지 않기 때문에 - python의 List에 비해 빠르고 메모리도 효율적이고, - 반복문 없이 데이터 배열에 대한 처리를 지원하며 - 선형대수와 관련된 다양한 기능을 지원 합니다. 이 부분에 대해서는 아래에서 자세하게 설명하겠습니다. 또한, numpy를 사용하기 위해서는 conda에서 numpy를 install 해주어야 합니다. conda install numpy numpy를 설치했다면 jupyter notebook이나 pycharm..

오늘은 Python의 Exception handling, File handling, Log handling, Data handling에 대해서 정리해보겠습니다. 프로그램을 개발하게 되면 다양한 상황을 마주하게 되는데 위와 같은 handling 작업을 통해 문제들을 해결해나갈 수 있습니다. 1️⃣ Exception handling 프로그램을 사용하거나 개발하게 되면 뜻하지 않은 오류들을 마주하게 되는데요. 이상한 데이터 값을 삽입했다거나 모듈이 충돌하거나, 값이 의도치 않게 수정되거나하는 문제들을 겪으셨을 것입니다. 이러한 예외들을 처리해주는 방법이 Exception handling입니다. 프로그램을 사용하다가 발생하는 상황들에 대한 대처 방안(?)이라고 말할 수 있습니다. Python에서는 Excepti..
오늘 과제를 하면서 정규 표현식(Regular Expression)을 써야 하는 일이 생겼습니다. 그래서 정리해보았습니다. 1️⃣ 정규표현식 (Regular Expression) 정규표현식 regex는 특정한 규칙을 가진 문자열 패턴을 검출해내는데 용이합니다. 특히 Python에는 char형을 하나씩 check하기 위해서 다른 함수를 사용하는 것보다 regex를 사용하는 것이 훨씬 효율적이고 빠릅니다. 하지만 정규식을 처음 보게되면 이해하기가 어렵습니다. 띄어쓰기도 안돼 있고 이상한 특수문자가 여러 개 붙어있어 규칙도 없어 보입니다. 하지만 정규식만큼 문자 패턴 검출이나 문자 교체에서 편한 방법이 없죠. 편한 UI로 정규식을 만들고 싶다면 아래 사이트 추천합니다. 복잡한 regex를 만들 때 어떻게 검출..

대부분의 언어는 객체 지향 프로그래밍이 가능하고 프로그래밍을 위해 Class를 지원합니다. Python 또한 Class가 있으며 다른 언어보다 강력한 객체 지향 프로그래밍을 지원합니다. 모듈은 class로 만들어진 조각으로 다른 개발자가 만들어놓은 라이브러리를 자신의 프로그램에 이식할 수 있습니다. 오늘은 Python의 객체 지향 프로그래밍과 모듈에 대해 알아보는 시간을 갖겠습니다. 1️⃣ 객체 지향 프로그래밍 개요 객체 지향 프로그래밍은 Object-Oriented Programming (OOP)라고 불립니다. 말 그대로 객체들이 중심이 된 프로그래밍 기법인데요. 객체란 하나의 역할을 수행하는 '메소드와 변수(데이터)'의 묶음이라고 생각하면 됩니다. OOP는 이러한 객체 개념을 프로그램으로 표현한 것인..

파이썬 스타일의 코드 Pythonic code는 파이썬 특유의 문법을 활용하여 효율적으로 코드를 표현하는 방법입니다. 다른 언어보다 훨씬 짧게 코드를 작성할 수 있는 이유도 Python이 효율적인 문법을 제공하기 때문이죠. 이번 시간에는 이러한 파이썬만이 가지고 있는 문법에 대해서 배워봅니다. 1️⃣ split & join C++에서 문자 자르기를 하면서 정말 많은 고생을 했던 것이 기억이 납니다. token으로 자르고, 함수를 호출하고... 문장을 자르기 위한 코드를 작성하는데 몇 줄이 소비됩니다. 하지만 Python은 split() 한 함수로 문장을 쪼갤 수 있습니다. 원하는 문자를 split의 parameter로 넣어주면 됩니다. >>> items = 'zero one two three'.split..

Python에는 다른 언어와 마찬가지로 다양한 자료구조들이 있습니다. 기본적인 자료구조와 Python에 특화된 Collection 모듈에 대해 알아보겠습니다. 1️⃣ 기본 data structure 1) 스택과 큐 (stack & queue) 스택은 나중에 나온 데이터를 먼저 반환하도록 설계된 메모리 구조입니다. Last In First Out (LIFO) 구조라고 하며, 알고리즘에서 괄호가 닫아졌는지 체크하는 문제 등에 사용됩니다. Python에서는 스택의 구현은 리스트로 가능합니다. 큐는 먼저 넣은 데이터를 먼저 반환하도록 설계된 메모리 구조입니다. First In First Out (FIFO)구조라고 하며, 알고리즘에서 은행 창구 문제 등에 사용됩니다. Python에서는 큐 구현도 스택과 마찬가지로..

본 내용은 이미 만들어진 repository를 클론 후, 터미널을 사용하는 방법입니다. 1️⃣ Git Clone 하기 위에 있는 repository를 clone 하고 싶다면 터미널에서 아래와 같이 실행합니다. git clone 이후, clone된 폴더를 찾아 아래와 같은 명령어를 입력하면 VS code를 실행할 수 있습니다. code . 2️⃣ Git push 하기 VS code를 사용해서 코드를 수정한 후 Github에 푸시하기 위해서는 아래와 같은 실행이 먼저 필요합니다. git pull // github에 변경된 사항을 가지고 옴 git add *.py // 현재 폴더의 모든 .py 폴더를 add함 git commit -m "Update my code" // "Update my code"라는 주석으..