python 기초 11

Pandas [DataFrame]

[DataFrame] DataFrame : 엑셀과 같이, 인덱스(Index), 변수(Column), 값(Value)로 이루어진 데이터 구조 Pandas DataFrame의 장점 대용량 데이터를 빠르고 쉽게 다를 수 있다. 한계용량 : 엑셀 약 100MB / Pandas 1GB ~ 100GB 복잡한 기능을 구현하기 쉽고, 데이터 전처리를 쉽게 할 수 있다. 다른 시스템과 연동이 쉽다. Flask 라이브러리 : 웹 개발 / SQLAlchemy : 데이터베이스 / Sklearn : 머신러닝 리스트를 이용한 DataFrame 생성 import pandas as pd df = [ [1,2,3], [4,5,6], [7,8,9] ] df #[[1, 2, 3], [4, 5, 6], [7, 8, 9]] pd.DataFr..

Pandas [Series]

[Pandas : Numpy 기반으로 작성된 라이브러리] Series 형태와 DataFrame 형태 존재 [Series] Series의 기본적인 구조 import numpy as np import pandas as pd s1 = pd.Series([1,2,56,77,90]) s1 #0 1 #1 2 #2 56 #3 77 #4 90 #dtype: int64 s1.sum() #226 s1.mean() #45.2 리스트와 튜플 형태로 Series를 생성 s2 = pd.Series(['홍길동','이말년','최영철','주우재'], name='출석부', index= ['하나','둘','셋','넷']) s2 #하나 홍길동 #둘 이말년 #셋 최영철 #넷 주우재 #Name: 출석부, dtype: object Series는..

Numpy

[Numpy : 배열이나 행렬계산에 필요한 함수 제공] ndarray : Numpy의 데이터 타입중 하나로, 리스트와 비슷한 형식의 구조적인 데이터 이중 구조의 배열이나 행렬(Matrix)처럼 사용이 가능하며, 수학 과학연산을 모두 지원 Numpy 라이브러리 호출 import numpy as np data = [6,5,7,3,4,2] arr= np.array(data) arr.mean() #4.5 리스트와 배열의 데이터 타입 print(type(data)) print(type(arr)) #print(type(data)) #print(type(arr)) Numpy array 내부 데이터 타입 arr1 = np.array([1,2,3,4,5]) arr1.dtype #dtype('int32') arr2 = n..

Function

함수 : 입력 X 값에 대한 결과 Y값을 반환(Return)하는 기능을 하나의 묶음으로 선언 Input X와 Output Y 반복적으로 사용되는 특별한 기능을 함수로 선언 여러 함수들의 집합을 ‘모듈(module)’이라고 부름 복잡한 데이터를 전처리할 때, 특정 기능을 반복적으로 구현하고 싶을 때 사용. 입력 받은 수의 합을 구하는 함수 def sum(num): for i in range(1,num+1): sum = num*(num+1)/2 return print(sum) num = int(input("정수를 입력하시오 : ")) sum(num) #정수를 입력하시오 : 200 #20100.0 한번 선언된 함수는 계속 사용 가능 def circle_area(r): return (r**2)*3.14 data..

조건문

[조건문: 특정 상황에 대한 판단 또는 해당 조건에 대한 실행여부 결정] If문을 사용하여 구현함. 주로 비교 연산자와 함께 사용됨. if 조건문을 이용한 연속형 변수 비교 A = 00 B = 200 if A > B: print("Hi") else: print("안녕하세요") #안녕하세요 elif문을 이용한 여러 조건의 비교 score = int(input("성적을 입력하세요! :")) if score >= 95: print("학생의 성정은 A+ 입니다.") elif score >= 90: print("학생의 성적은 A 입니다.") elif score >= 80: print("학생의 성적은 B 입니다.") elif score >= 70: print("학생의 성적은 C 입니다.") else: print("..

Dictionary

[딕셔너리 (Dictionary) : 데이터를 Key와 Value의 pair 형태로 하나의 변수에 선언] 중괄호를 이용하여, key-value Pair 형태로 묶어줌 d = {”name” : “choi”, “value” : 28} #choi라는 데이터가 28이라는 키값과 쌍을 이룸. key 값은 중복 되지 않음 Pandas 라이브러리의 Series와 비슷한 개념 Dictionary의 선언과 형태 D = {'A':100, 'B':200, 'C':300} print(D) print(type(D)) #{'A': 100, 'B': 200, 'C': 300} # Dictionary Indexing dict1 = {"이름":"최영철", "소속":"None", "월 수익":300} dict1 #{'이름': '최영철'..

Set

[세트(Set) : 리스트와 같이 여러 개의 데이터를 집합의 형태로 집어 넣을 수 있는 공간] 중괄호를 이용하여, 데이터를 묶어 줌 c = {1,2,3,4,5} #5개의 데이터가 c라는 변수에 모두 담겨있음 집합 내 데이터 간 순서 없음, 중복을 허용하지 않음 집합 내 데이터 변경이 가능 집합연산이 가능 (Van Diagram 개념) A&B A와 비의 교집합 연산 A B A-B A집합에서 B집합의 원소를 제외한 나머지 A^B A집합과 B집합의 교집합을 제외한 나머지 Set의 선언과 형태 (중복된 값은 스스로 제외하고 출력) A = {10, 20, 30, 40, 10} print(A) print(type) #{40, 10, 20, 30} # B = {10,10,10,10,10,10} print(B) #{1..

Tuple

[튜플(tuple) : 리스트와 같이 여러 개의 데이터를 집어넣을 수 있는 공간] 소괄호를 이용하여, 데이터를 묶어 줌 c = (1,2,3,4,5) #5개의 데이터가 c라는 변수에 모두 담겨있음 튜플 내 데이터 간 순서가 존재 한번 선언된 튜플은 변경이 불가능 함 Packing과 Unpacking을 활용하여, 데이터를 추출하거나 튜플을 생성할 수 있음. Packing : 여러 개의 데이터를 쉼표(,) 구분자를 이용해, 하나의 변수로 생성 Unpacking : 하나의 튜플을 여러 개의 변수로 선언하여, 변수에 각 데이터를 선언 함수와 반복문 같이 중요한 하이퍼파라미터(Hyper Parameter)들을 보호 할 때 사용 하이퍼파라미터 : 수식 내 값이 변하지 않는 인자나 상수 튜플 선언과 형태 (appen,..

List

리스트(List) 여러 개의 데이터 다룰 때, 하나의 변수에 많은 값을 집어 넣을 수 있음. 대괄호를 이용하여, 데이터를 묶어 줌 a = [1,2,3,4,5] #5개의 데이터가 a라는 변수에 모두 담겨있음 리스트 내 데이터를 삭제하거나 추가, 수정이 가능함 append() : 추가 insert() : 삽임 remove() : 삭제 Size가 정해져 있지 않고 유동성이 있다. 리스트 선언과 형태 list1 = [100,200,300,400,500] list1 #[100, 200, 300, 400, 500] type(list1) #list list2 = ['최영철', 70, 80, '서울'] list2 #['최영철', 70, 80, '서울'] type(list2) #list 리스트의 특정 위치에 값을 추출할..