분류 전체보기 63

02. Pandas(1): 데이터 조회 및 결측값 처리

Pandas는 다양한 데이터 분석 기능을 제공하는 Python 라이브러리이다. Pandas(Panel data system)는 데이터 분석에 사용되는 Python 라이브러리로, SQL, 엑셀시트처럼 행과 열로 이루어진 데이터를 효율적으로 가공 및 처리할 수 있도록 해준다. Pandas 자료구조 Series 가장 간단한 1차원 구조 하나의 열을 의미 DataFrame 행과 열을 가진 2차원 자료형 별도의 인덱스를 지정하지 않으면 0부터 시작되는 인덱스를 기준으로 데이터 저장 데이터프레임 데이터 조회 1) 열(column) 기준 조회 df['name'] / df.name : 'name' 컬럼 조회 df[['name', 'grade']] : 여러 개의 컬럼 데이터 조회 * 여러 개의 컬럼 동시 조회 시 대괄호..

01. 데이터 사이언스란?

데이터 사이언스는 데이터 기반의 의사결정을 위하여 통계학, 데이터 분석, 기계학습의 방법론을 통합하는 학문이다. 데이터 사이언스는 데이터로부터 의미있는 정보를 추출해내는 학문이다. 통계학과 일정 부분 유사하지만, 통계학이 정형화된 데이터를 다루는 반면, 보다 다양한 데이터를 수학과 모델링으로 분석하여 앞으로의 경향까지 예측한다는 점에서 데이터 사이언스는 통계학과 데이터 분석, 기계학습 등의 분야를 통합하는 개념이라고 볼 수 있다. 데이터 사이언스 라이프사이클(Data Science Lifecycle) 데이터 사이언스 실무는 크게 6단계로 나누어진다. 빅데이터 분석과 모델링 카테고리에서는 데이터 준비 단계부터 모델링 단계까지 알아본다. 1) 비즈니스 이해 업무의 관점에서 프로젝트의 요구사항에 대한 전반적인..

04. Linear Algebra(3): Linear Independence

Linear Combination is an important notion in linear algebra. 3-1. Linear Independence The goal is to understand, Linear independence Uniqueness of a solution in a linear system Subspace, basis, and dimension Column space and rank Uniqueness of Solution of Ax = b If the solution exists for Ax = b, when it is unique? It is unique when a1, a2, and a3 are linearly independent Infinitely many solutio..

03. Linear Algebra(2): Linear Combinations

Linear Combination is an important notion in linear algebra. 2-2. Linear Combinations The goal is to understand, Linear combination and vector equation Span Existence of solutions in a linear system Matrix-matrix multiplication as linear combination of vectors Linear Combinations The weights in a linear combination can be any real numbers, including zero. Some vectors with the weight of zero may..

02. Linear Algebra(1): Basic Elements of Linear Algebra

Linear Algebra is an important mathematical component in data science. 2-1. Basic Elements of Linear Algebra The goal is to understand, Basic elements of linear algebra Matrix notations and operations Linear system Solving a linear system Scalar, Vector, and Matrix Column Vector and Row Vector Matrix Notations Vector/Matrix Additions and Multiplications Properties of Matrix Addition and Multipli..

05. 반복문(1): for문과 list

반복문의 경우 목적에 따라 for문과 while문이 사용된다. Python에서 반복문 for문과 while문이 각각 어떤 경우에 사용되는지 구분할 필요가 있다. 예제를 풀면서도 왜 for문 또는 while문이 사용되어야 하는지 생각해보는 것이 좋다. for문은 반복 횟수가 명확할 때 사용된다. 1부터 100까지의 숫자를 돌아가면서 검사하는 프로그램이 하나의 예시가 될 수 있다. 반면, while문은 반복 횟수가 명확하지 않은 경우에 사용된다. 따라서 사용자 프로그램의 큰 틀을 잡을 때 while문을 사용한다. 프로그램의 사용자가 몇 차례나 input을 넣을지 알 수 없기 때문이다. 이번 포스팅에서는 for문에 주로 사용되는 자료형과, 해당 자료형과 함께 쓰이는 함수들에 대해 알아보려고 한다. for문과 ..

04. 조건문(2): if문 확장

if 조건문에 elif, else 구문을 활용할 수 있다. 지난 포스팅에서는 조건문에 사용되는 다양한 표현들과 조건문의 구성에 대해 알아보았다. 이번에는 조건문에서 if 구문과 함께 사용되는 elif, else 구문을 살펴본다. 아래 1, 2번 조건문은 형태가 유사하지만 다른 성질을 가지고 있다. (1) if if 조건: 종속문장 if 조건: 종속문장 if 조건: 종속문장 (2) if, elif, else if 조건: 종속문장 elif 조건: 종속문장 else: 종속문장 if 구문으로만 이루어진 1번 조건문의 경우 여러 조건이 동시에 적용될 수 있다. 예를 들어 첫 두 개의 조건에 모두 해당된다면 각 종속문장이 나타내는 작업이 모두 진행된다. 반면, if, elif, else로 구성된 2번 조건문의 경우..

03. 조건문(1): if문

프로그램의 흐름을 제어하는 제어문에는 조건문과 반복문이 있다. 이번에는 조건문에 사용하면 좋은 표현들과 조건문을 구성할 때의 유의사항에 대해 알아본다. 숫자, 문자열의 bool 전환 숫자나 문자열을 bool() 함수를 사용하여 bool 자료형으로 전환했을 때, False를 반환하는 bool(0)과 bool('')의 두 가지를 제외한 나머지는 모두 True를 반환한다. 즉, 숫자의 경우 0만 False를 반환하고, 문자열은 비어있는 경우에만 False를 반환한다. 공백 문자(' ')도 True를 반환한다. 부등호 연결 다른 언어와 달리 Python에서는 두 개의 부등호를 이어서 표현하는 것이 가능하다. 예를 들어, 아래 코드의 실행 결과는 True이다. a = 10 print(0 < a < 20) 논리 연..

02. 입력 함수 input()

input()은 프로그램의 사용자가 입력한 값을 반환해주는 함수이다. input() 함수는 입력이 들어오면 해당 입력값을 반환한다. 입력을 판단하는 기준은 Enter 키 입력 여부이다. Enter 키를 누르면 다음 단계로 넘어갈 수 있도록 설계하기 위해 input()을 사용하기도 한다. 그게 아니라면 대부분의 경우 input() 함수는 아래와 같은 형태로 사용된다. x = input('입력: ') input() 함수의 반환형은 무조건 문자열이다. 숫자 계산을 위해서는 int(), float() 등을 이용하여 자료형을 변환해주어야 한다. input()은 사용자로부터 값을 입력받는 함수이다. 결국 해당 함수를 사용할 때는 사용자 중심의 프로그램을 설계하는 것이 중요하다. 예를 들면 사용자가 고려하면 좋을 정..

01. 자료형 및 기본 함수

Python은 라이브러리가 풍부한 interpret 방식의 고급 언어이다. Python Basics 첫 포스팅에서는 프로그래밍 언어와 Python에 대해 간단히 알아보고, 아주 기본적인 자료형과 함수, 연산자들을 몇 가지 살펴본다. 관련 코드는 아래 링크에서 확인할 수 있다. https://github.com/tldnjs1231/python-basics/blob/main/python-basics-01.py GitHub - tldnjs1231/python-basics Contribute to tldnjs1231/python-basics development by creating an account on GitHub. github.com Why Python? Python은 interpret 방식을 사용하는 ..