본문 바로가기

분류 전체보기

(36)
[Data/Python]실습_표본 추출 단순 임의 추출로 하면 데이터를 학습시킬 때 한쪽으로만 치우쳐 학습될 수 있음. 따라서 데이터를 균등하게 학습시키기 위해 층화 표본 추출 사용 층화 표본 추출 군집별로 지정한 비율 만큼의 데이터를 임의 추출 의료 통계에서 코호트 분석할 때 사용 계통 추출 첫 표본은 무작위 추출. 표집 간격 k만큼 떨어진 곳 데이터 추출 특정 데이터가 주기성을 가지면, 데이터를 추출할 때 편향된 표본을 뽑을 수 있어 자주 사용x 군집 추출 소수의 군집으로 분할. 일정 수의 소집단을 임의 표본 추출 Pandas 메서드 pandas - sample() 단순임의 추출 수행 n은 표본 개수, frac은 비율, random_state는 표본 추출 결과를 고정 groupby() 추가하면 층화 표본추출 가능 sklearn(사이킷런) ..
[Data/Python]실습_EDA: 수치형, 범주형 기술통계 NumPy 배열 : NumPy의 객체인 배열(array)을 생성하기 위해서는 기본적으로 "array"함수 사용 집합은 중복을 허용하지 않음. 집합으로 설정하면 중복제거된 나머지만 남음 nums=np.array([1,2,2,3]) set(nums) # {1,2,3}. 집합으로 설정->중복제거 np.unique(nums) # array([1,2,3]). 중복 제거하고 고유한 것만 남겨라 np.arange(3, 8, 2) #array([5,10,15]). 3부터 7까지 2씩 증가하는 수열 생성 np.where(nums==2,1,0) #array(['no!', 'ok!', 'ok!', 'no!'], dtype='
[Data/Python]실습_기본문법 List Comprehension 선언과 할당을 동시에 [ ( 변수를 활용한 값 ) for ( 사용할 변수 이름 ) in ( 순회할 수 있는 값 )] 예제 #List Comprehension. for문, if문 결합 bb=[2,3,4,5,6] even=[num for num in bb if num%2==0] even bb=[2,3,4,5,6] even=[] for num in bb: if num % 2 == 0: even=even+[num] even 동일한 코드 +) 단축키 Shit+Tab,Tab(함수 설명) 라이브러리 개요 NumPy 메모리 효율적인 벡터 산술연산 기능 제공 반복문 없이 전체 데이터 배열 일괄 연산 기능 제공 선형대수, 난수 발생, 푸리에 변환 등 다양한 연산 기능 제공 Pandas N..
[알고리즘] 퀵 정렬 퀵 정렬 분할정복방법론 다른 완소와의 비교만으로 정렬을 수행하는 비교 정렬에 속함 최악 시간복잡도 - O(n^2), 평균 시간복잡도 - O(nlogn) 일반적으로 다른 O(nlogn)알고리즘에 비해 훨씬 빠르게 동작 피봇은 제일 오른쪽에 있는 값으로 설정 #include void quickSort(int *A, int p, int r) { int q; if (p < r) { q = partition(A, p, r);// 분할 quickSort(A, p, q - 1);// 왼쪽 부분 배열 정렬 quickSort(A, q + 1, r);// 오른쪽 부분 배열 정렬 } } int partition(int *A, int p, int r) { int i = p; int j = p; int tmp = 0; whil..
[Spring boot] 11일차_HTTP와 REST 컨트롤러 REST API의 의미 REST : HTTP URL로 서버의 자원을 명시하고, HTTP 메서드(POST, GET, PATCH/PUT, DELETE)로 해당 자원에 대해 CRUD(생성, 조회, 수정, 삭제)하는 것을 말함 API : 클라이언트가 서버의 자원을 요청할 수 있도록 서버에 제공하는 인터페이스 -> REST API란 REST 기반으로 API를 구현한 것. REST API를 잘 구현하면 클라이언트가 기기에 구애받지 않고 서버의 자원을 잘 이용할 수 있음. 또한 클라이언트의 요청에 서버가 체계적으로 대응할 수 있어 서버 프로그램의 재사용성, 확장성이 좋아짐 REST API구현 REST API로 요청과 응답을 주고 받을 때는 REST 컨트롤러를 사용함. 또한 응답할 때 적절한 상태 코드를 반환하기 위해..
[Spring boot] 10일차_REST API와 JSON REST API 서버의 자원을 클라이언트에 구애받지 않고 사용할 수 있게 하는 설계 방식. 서버에서 보내는 응답이 특정 기기에 종속되지 않도록. Rest API 동작 JSON 서버는 클라이언트의 요청에 대한 응답으로 화면(view)이 아닌 데이터(data)를 전송함. 이때 사용하는 응답 데이터가 JSON(JavaScript Object Notation)임.(과거에는 XML 주로 사용). +) API(Application Programming Interface) : 애플리케이션을 간편히 사용할 수 있게 하는, 미리 정해진 일종의 약속. 자바스크립트 방식 차용. 키&값의 쌍으로 이루어짐. { "키1":값, "키2":값, "키3":값 } https://jsonplaceholder.typicode.com JSO..
[알고리즘] 병합 정렬 https://www.youtube.com/watch?v=oHRChO--Hjs 이보다 친절한 수업은 없다 내가 짠 코드 #include #include void merge(int* a, int p, int q, int r); void mergeSort(int* a, int p, int r) { int q; if (p < r) { q = (p + r) / 2; mergeSort(a, p, q);// 전반부 mergeSort(a, q + 1, r);// 후반부 merge(a, p, q, r); } } void merge(int* a, int p, int q, int r) { int i; int p_idx = p; int q_idx = q + 1; int r_idx = r; int a_idx = p; int*..
[알고리즘] 삽입 정렬 삽입 정렬 : 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘 C언어 구현 ver1. void insertionSort(int A[], int n) { int key, index; for (int i = 1; i = 0; j--) { if (A[j] > key) { A[j + 1] = A[j]; } else { index = j + 1; break; } } A[index] = key; } for (int i = 0; i < n; i++) { printf("%d ", A[i]); } } ver2. void insertionSort2(i..