반응형
제육's 휘발성 코딩
반응형
이진탐색
PYTHON/Algorithm 2021. 9. 16. 05:25

이진 탐색 탐색할 자료를 둘로 나누어 탐색 분할 정복 알고리즘과 이진 탐색 분할 정복 알고리즘 (Divide & Conquer) Divide : 문제를 하나 또는 둘 이상으로 나눈다. Conquer : 나눠진 문제가 충분히 작고, 해결 가능하다면 해결, 아니면 다시 나눈다. 이진 탐색 정렬된 상태에서 진행 Divide : 리스트를 두 개의 서브 리스트로 나눈다. Conquer search > 중간값 이면, 뒤에서 찾는다. 반대면 앞에서 찾는다. def binary_search(data, search): if len(data) == 1 and search == data[0]: return True if len(data) == 1 and search != data[0]: return False if len(..

[Big Data] Chap 2. 빅데이터 탐색(2)
Big Data 2021. 9. 15. 17:31

데이터 탐색 데이터의 특징을 파악하고 자료를 직관적으로 바라보는 분석 방법 탐색적 데이터 분석 EDA 저잔재현 (4R's) 저항성 Resistance 오류, 이상값에 영향을 적게 받는 성질 탐색적 데이터 분석은 저항성이 큰 통계적 데이터 이용 잔차 해석 Residual 관찰 값들이 벗어난 정도를 탐색 자료 재표현 Reexpression 원래 변수를 적당한 척도로 바꾸는 것 현시성 Graphic Representation 시각적으로 표현하고 전달하는 과정 개별 변수 탐색 방법 범주형 (질적) 데이터 명목 척도와 순위 척도에 대한 데이터 탐색 명목 척도 : 관측 대상을 범주로 나누어 기호나 숫자를 부여 (순서가 상관없다.) 순위 척도 : 비계량적 변수를 상대적 순위화를 통해 관측 (순서가 관계있다.)..

[Big Data] Chap 2. 빅데이터 탐색(1)
Big Data 2021. 9. 15. 16:52

데이터 오류 원인 결측값 필수 데이터가 입력되지 않고 누락된 값 완전 무작위 결측 MCAR : 아무런 상관이 없는 경우 무작위 결측 MAR : 특정변수와 관련되어 일어나지만 결과와는 관계가 없는 경우 비 무작위 결측 MNAR: 결과와 연관된 변수가 있는 경우 단순 대치법 완전 분석법 : 불완전한 자료 무시 평균 대치법 : 평균값으로 결측값 대체 단순 확률 대치법 : 핫덱(비슷한 성향), 콜드덱(외부 출처, 이전의 연구), 혼합 다중 대치법 대치 : 사후분포에서 추출된 값으로 대치 분석 : D개의 대치표본을 구해 원하는 분석 수행 결합 : 모수의 점 추정과 표준오차 추정치 D개를 결합하여 하나의 결과 제시 노이즈 입력되지 않았는데 입력되었다고 판단된 값 이상값 데이터 범위에서 많이 벗어난 값 발생 원인 표..

[Big Data] Chap 1. 빅데이터 분석 기획(3)
Big Data 2021. 9. 15. 16:06

데이터 수집 수집 데이터는 내부, 외부 데이터로 구분 내부 조직 내부에 데이터 위치 SCM, ERP, CRM 등 서비스, 네트워크, 마케팅 외부 조직 외부에 데이터 위치 LOD, SNS, 커뮤니티 등 소셜, 네트워크, 공공 데이터 수집 방식 ETL (Extract Transform Load) 데이터 저장소인 DW(데이터 웨어하우스) 및 DM(데이터마트)로 이동 원본 데이터를 추출하고 변환하여 적재하는 작업 및 기술 추출 : JDBC, ODBC 변환 : 적절한 포맷으로 데이터 변환 적재 : 변환된 데이터를 DW, DM에 저장 FTP TCP/IP 기반 서버-클라이언트에서 파일 송수신을 위한 프로토콜 20, 21번 포트 번호 사용 Sqoop 커넥터를 사용하여 RDBMS와 HDFS(하둡 파일 시스템)간 송수신 ..

[Android] 안드로이드 스튜디오 동작 방식
Other 2021. 9. 15. 14:42

동작 방식 자바 - 하이브리드 방식 (컴파일, 인터프리터) Source(.java) - compile - Byte Code(.class) - interpreter(jvm) - Running 안드로이드 - 리눅스 커널 안드로이드는 바이트 코드에서 한번 더 번역해서 DEX 파일을 만든다. (.class) DEX 파일을 ART(Android Runtime)에서 해석 - ART는 가상머신이다. APK 파일은 안드로이드는 뷰 영역인 Resource 파일도 같이 만든다. Source - compile - Byte Code - APK(DEX,Resource) - ART 안드로이드 구조 Application Java Api Framework - 자바 라이브러리 c/c++ lib / ART HAL - Hardware A..

[Network] 네트워크 용어 정리
CS/네트워크 2021. 9. 14. 16:41

네트워크 기초 용어 시스템 내부 규칙에 따라 능동적으로 동작하는 대상 (노드, 호스트, 클라이언트, 서버 등) 컴퓨터, 자동차, 자판기, 운영체제, 프로세스 등 인터페이스 시스템과 전송 매체의 연결 지점에 대한 규격 RS-232C, USB 등 전송매체 시스템끼리 데이터를 전달하기 위한 물리적 전송 수단 프로토콜 전송 매체를 통해 데이터를 교환할 때의 임의의 통신 규칙 네트워크 프로토콜을 사용하여 데이터를 교환하는 시스템의 집합 인터넷 (IP) 전세계의 네트워크가 유기적으로 연결되어 동작하는 통합 네트워크 표준화 서로 다른 시스템이 상호 연동해 동작하기 위한 통일된 연동 방식 네트워크 프로토콜 ISO의 OSI (Open System Interconnection) 7계층 모델 (명세서, 스펙) 응용 - 응용..

동적 계획법과 분할 정복
PYTHON/Algorithm 2021. 9. 12. 16:25

동적 계획법과 분할 정복 동적 계획법 (DP) 입력 크기가 작은 부분 문제들을 해결한 후, 해당 부분 문제의 해를 활용해서 큰 크기의 부문 문제를 해결 상향식 접근법으로, 상위 문제를 풀어가는 방식 Memoization : 프로그램 실행 시 이전에 계산한 값을 저장하여, 실행 속도를 빠르게 하는 기술 문제를 쪼갤 때, 부분 문제는 중복되어, 재활용 된다. (피보나치) 분할 정복 문제를 나눌 수 없을 때까지 나누어서 각각을 풀면서 다시 합병하여 문제의 답을 얻는 알고리즘 하향식 접근법으로, 상위의 해답을 구하기 위해, 아래로 내려가면서 하위의 해답을 구하는 방식 일반적으로 재귀함수 구현 문제를 잘게 쪼갤 때, 부분 문제는 서로 중복되지 않음 병합 정렬, 퀵 정렬 공통점과 차이점 공통점 문제를 잘게 쪼개서,..

[Clean Code] Chap 7. 오류 처리
Book/Clean Code 2021. 9. 12. 11:31

예외처리 방식 오류 코드를 리턴하지 말고, 예외를 던져라 (당연) 예전 에러코드로 반환하는 방식 오류가 발생한 부분에서 예외를 던진다. (별도의 예외 처리가 필요하다면 checked exception을 사용한다. 또는 throws 명시) checked exception을 사용하지 않는다면, 메서드 선언부에 throws를 명시 예외를 처리할 수 있는 곳에서 catch하여 처리 *문제점 * 특정 메서드에서 checked exception을 throw하고 상위 메서드에서 catch 한다면 모든 중간 메서드들은 throws를 해야 한다. OCP 위배 : 상위 메서드에서 하위 메서드의 디테일에 대해 알아야 한다. 필요한 경우 checked exception을 사용하지만, 일반적으로 득보다 실이 많다. Checke..

반응형
반응형