목록분류 전체보기 (282)
Hayden's Archive
데이터 분석 이전에 데이터 전처리 과정이 중요 -> 누락 데이터를 어떻게 처리할 것인가가 중요. NaN이라고 함. 누락된 데이터 관련 함수 -> isnull / notnull 판다스에서 누락데이터 값은 배제하고 기술 통계 처리. drop은 그냥 없애는 것 dorpna는 누락데이터를 없애는 것 fillna는 누락데이터를 다른 값으로 채우는 것
DataFrame 생성하기 DataFrame - 구조 확인 DataFrame - 컬럼명 변경 및 추가 DataFrame - 조회하기 (인덱싱, 슬라이싱) drop() - 삭제하기 DataFrame - 정렬하기 실전데이터로 응용하기 알아두면 유용한 함수들 * DataFrame 생성하기 데이터를 로드해올 때 서두르지 말 것. 데이터가 어떻게 생겼는지 먼저 알고 들어가야 함. 그 데이터를 모르면 데이터 분석이 안 됨. 모델을 구축하는 것도 좋지만 어떤 데이터를 input으로 받아들이는지 알고 들어갈 것. 내가 분석하고자 하는, 학습시키고자 하는, 끌어오고자 하는 데이터가 어떤 모양인지 반드시 먼저 확인하고 코드 작성하기! 이 데이터가 어떤 데이터의 성격인지 알려면 이 데이터의 feature(특징=..
판다스(Pandas) 도입 시리즈(Series) 생성, 구조 확인 시리즈 값 조회하기 응용해서 조회하기 시리즈 간의 연산과 누락 데이터 처리 Series 값을 이용한 시각화 * 판다스(Pandas) 도입 판다스에서 하는 수학적인 계산들을 넘파이꺼 씀. Series(1차원) -> 벡터구조. DataFrame(2차원) -> 행과 열. 행렬(매트릭스)로 자료 보관 Panel(3차원) 데이터 분석에서 인덱스는 행! 판다스의 시리즈(Series)는 일련의 객체를 담을 수 있는 1차원 배열 구조(넘파이 배열과 같음). 값에는 내부적으로 인덱싱이 매겨져있다. 위로↑ * 시리즈(Series) 생성, 구조 확인 위로↑ * 시리즈 값 조회하기 위로↑ * 응용해서 조회하기 위로↑ * 시리즈 간의 연산과 누락 데이터 처리 위..
알고리즘 문제 출처 : https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 내가 작성한 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); long factorial = 1; int n = sc.nextInt(); for(int i=2; i
알고리즘 문제 출처 : https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 내가 작성한 코드 import java.util.Scanner; public class Main { public static boolean prime(int a) { if(a==1) {//1인 경우 return false; } for(int i=2; i*i
알고리즘 문제 출처 : https://www.acmicpc.net/problem/2609 2609번: 최대공약수와 최소공배수 첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다. www.acmicpc.net 내가 작성한 코드 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public class Main { public static int gcd(int a, int b) { //최대공약수 if(b==0) { re..
* 나머지 연산(Modular Arthimetic) - 컴퓨터의 정수는 저장 범위가 한정적 -> 그래서 답을 M으로 나눈 결과를 출력하라는 문제가 종종 나옴 - (A+B)%C 와 (A%C+B%C)%C 는 같고, (A*B)%C 와 (A%C*B %C)%C 는 같다 * 최대공약수(Greatest Common Drivisor = GCD) // 관련 알고리즘 : https://hayden-archive.tistory.com/279 - 서로소(Coprime) : 최대공약수가 1인 두 수 - 최대공약수를 구하는 가장 빠른 방법 -> 유클리드 호제법(Euclidean algorithm) 이용 - 유클리드 호제법 : a를 b로 나눈 나머지를 r이라고 할 때 GCD(a,b) = GCD(b,r) - 이 때 r이 0이면 그 ..
알고리즘 문제 출처 : https://www.acmicpc.net/problem/1935 1935번: 후위 표기식2 첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이�� www.acmicpc.net 관련 문제 포스팅 : https://hayden-archive.tistory.com/276 내가 작성한 코드 후위 표기식 문제를 풀고 풀었더니 쉽게 풀 수 있었던 문제. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.ut..
알고리즘 문제 출처 : https://www.acmicpc.net/problem/1918 1918번: 후위 표기식 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 A~Z의 문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 수식�� www.acmicpc.net 관련 알고리즘 : 차량기지 알고리즘 https://ko.wikipedia.org/wiki/%EC%B0%A8%EB%9F%89%EA%B8%B0%EC%A7%80_%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98 정답 비율 30.790%를 자랑하는 문제. 생각지도 못한 반례에서 계속 부딪혀서 9번만에 정답을 맞혔다... 후위표기식 문제에서 나올 수 있는..
알고리즘 문제 출처 : https://www.acmicpc.net/problem/10808 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net 내가 작성한 코드 아스키코드를 활용하면 쉽게 풀 수 있는 문제 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.HashMap; import java.util.Stack; public class Main { ..