목록전체 글 (106)
오예 !!!
사전 자료형 키 key와 값 value의 쌍을 데이터로 가지는 자료형 우리가 원하는, 변경 불가능한 데이터를 키로 사용할 수 있음 변경 불가능한 데이터: 수 자료형, 문자열 자료형, 튜플 자료형처럼 한 번 초기화되면 변경이 불가능한 자료형 튜플 자료형도 가끔 사전 자료형의 키로 사용됨 내부적으로 해시 테이블 이용 -> 데이터의 검색 및 수정을 O(1) 시간에 처리 -> 리스트보다 훨씬 빠름 data = dict() data['사과'] = 'apple' data['바나나'] = 'banana' data['코코넛'] = 'coconut' print(data) # 결과: {'사과': 'apple', '바나나': 'banana', '코코넛': 'coconut'} 코테 문제에서 리스트보다 훨씬 적은 메모리 공간을..
튜플 자료형 리스트와 거의 비슷하지만, 아래와 같은 차이점 존재 차이점 1. 튜플은 한 번 선언된 값을 변경할 수 없음. 차이점 2. 리스트는 대괄호 ([])를 이용하지만, 튜플은 소괄호 (()) 이용 a = (1, 2, 3, 4) a[2] = 7 # 에러 발생 - 그래프 알고리즘 구현 시 자주 사용 ex) 다익스트라 최단 경로 알고리즘처럼 최단 경로를 찾아주는 알고리즘에서 사용되는 우선순위 큐에 한 번 들어간 값은 변경되지 않음. 이러한 우선순위 큐를 구현할 때 튜플을 사용함으로써 의도치 않은 값의 변경을 방지할 수 있음. - 리스트에 비해 상대적으로 공간 효율적 - 각 원소의 성질이 서로 다를 때 주료 사용 ex) 다익스트라 최단 경로 알고리즘에서는 (비용, 노드번호)의 형태로 서로 다른 성질의 데이..
문자열 자료형 문자열 초기화 - 큰따옴표 (") or 작은따옴표 (') 이용 - 문자열을 큰따옴표로 구성 -> 내부적으로 작은따옴표 사용 가능 - 문자열을 작은따옴표로 구성 -> 내부적으로 큰따옴표 사용 가능 - 이스케이프 문자인 백슬래시 (\)를 사용하여 내부적으로 큰따옴표 or 작은따옴표 사용 가능 data = "Hello \"World\"" print(data) # 결과: Hello "World" 문자열 연산 - 문자열 변수에 덧셈 (+) 이용 -> 문자열이 더해짐 - 문자열 변수를 양의 정수와 곱함 -> 문자열이 양의 정수만큼 반복 - 문자열 변수는 내부적으로 리스트와 같이 처리 -> 인덱싱 & 슬라이싱 이용 가능 a = "Hello" b = "World" print(a + b) # 결과: Hel..
리스트 자료형 - 여러 개의 데이터를 연속적으로 담아 처리하기 위해 사용 - C나 자바에서의 배열 기능 포함 - 내부적으로 연결 리스트 자료구조 -> append() & remove() 함수 지원 리스트 만들기 a = [1, 2, 3, 4, 5] # 인덱스 이용 접근 print(a[2]) # 3 # 빈 리스트 선언 방법 a = list() a = [] #크기가 N이고, 모든 값이 0인 1차원 리스트 초기화 n = 10 a = [0] * n print(a) # [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 인덱싱과 슬라이싱 - 인덱스가 음수면 맨 뒤 원소부터 -1로 시작. - 슬라이싱의 경우, a[시작 인덱스:끝 인덱스] - 이때, 끝 인덱스에 1을 뺀 인덱스까지 출력됨 a = [1,2,3,4,5..
수 자료형 Number 정수형 Integer - 정수를 다루는 자료형 - 양의 정수, 음의 정수, 0 - ex) a, b = 1000, -7 실수형 Real number - 소수점 아래의 데이터를 포함하는 수 자료형 - 소수부가 0이거나, 정수부가 0인 경우 0 생략 가능 (ex. a = 5. b = -.7) - e나 E를 이용한 지수표현 방식 사용 가능 - 유효숫자e지수 = 유효숫자X10^지수 (ex. 1e9 == 1 X 10^9) => 코테 문제에서 최단 경로로 가능한 최댓값이 10억 미만이라면 INF를 표현할 때 10억 대신 1e9 혹은 987,654,321 사용 가능 - 컴퓨터는 실수를 처리할 때 부동 소수점(floating point) 방식을 사용하는데, 4B or 8B의 고정된 크기의 메모리 ..
📢 학교 수업에서 수행한 과제입니다. 이번 게시글에서는 K-NN과 PCA를 이용하여 MNIST dataset을 학습시켜 볼 것입니다. 구글 코랩에서 코드를 작성 및 실행하였습니다. 우선 MNIST dataset을 import하겠습니다. import pandas as pd df_train = pd.read_csv('https://media.githubusercontent.com/media/hmkim312/datas/main/mnist/mnist_train.csv') df_test = pd.read_csv('https://media.githubusercontent.com/media/hmkim312/datas/main/mnist/mnist_test.csv') df_train.shape, df_test.shap..
📢 학교 수업에서 수행한 과제입니다. 이번 게시글에서는 titanic dataset에 대해 Random Forest 모델을 학습시켜 볼 것이다. 구글 코랩에서 코드를 작성 및 실행하였으며, 전체 코드는 지난 게시글을 참고하라. 지난 게시글 [ML] HA2 part1 (1) Decision trees with Breast cancer dataset https://kwonppo.tistory.com/38 [ML] HA2 part1 (1) Decision trees with Breast cancer dataset HA2 part1은 'Decision trees with Breast cancer dataset'과 'RandomForest with Titanic dataset' 두 가지로 이루어져 있다. 이번 게..
📢 학교 수업에서 수행한 과제입니다. HA2 part1은 'Decision trees with Breast cancer dataset'과 'RandomForest with Titanic dataset' 두 가지로 이루어져 있다. 이번 게시글에서는 우선 Decision trees에 대해 다룰 것이다. 구글 코랩에서 코드를 작성 및 실행하였으며, 전체 코드는 다음 코랩 노트북을 참고하라. https://colab.research.google.com/drive/1luQJnz2s9UGT7iZi5NFg7XwBo5RyDysq?usp=sharing HA2_part1.ipynb Colaboratory notebook colab.research.google.com 그럼 우선 Breast cancer dataset을 불러..