목록전체보기 (254)
anothel의 지식 창고
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/caX2rS/btsLDoabIKu/tJNGzxR0Ibpk9yXBxTdJRK/img.png)
1. 개요이진탐색(Binary Search)은 정렬된 데이터에서 원하는 값을 효율적으로 찾기 위한 탐색 알고리즘이다. 이 알고리즘은 데이터의 중간 값을 기준으로 탐색 범위를 절반씩 줄여 나가기 때문에 매우 빠른 탐색이 가능하다. 이 문서에서는 이진탐색의 정의와 특징, 동작 원리, 그리고 구현 방법 등을 다루며, 이 알고리즘이 가지는 효율성과 실제 활용 방안을 확인한다.2. 이진탐색의 정의와 특징이진탐색은 정렬된 배열 또는 리스트에서 특정 값을 찾기 위한 탐색 방법이다.특징탐색 방식: 매번 탐색 범위를 절반으로 줄인다.전제 조건: 데이터가 반드시 정렬되어 있어야 한다.작동 원리중간 값을 기준으로 탐색하며, 찾고자 하는 값이 중간 값보다 크거나 작은지에 따라 탐색 범위를 반으로 줄여나간다.3. 이진탐색의 동..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bIXh2a/btsLDOT1psW/UBqZQDcdQHH8rR3faogXU1/img.webp)
1. 개요Shunting Yard 알고리즘은 네덜란드의 컴퓨터 과학자 에츠허르 데이크스트라가 고안한 알고리즘으로, 중위 표기법으로 표현된 수식을 후위 표기법으로 변환하는 데 사용된다. 이 알고리즘은 계산기나 컴파일러에서 널리 사용되며, 수식의 연산자 우선순위를 고려해 쉽게 계산할 수 있는 후위 표기법으로 변환하는 것이 핵심이다.이 문서에서는 Shunting Yard 알고리즘의 원리, Python 구현 방법, 그리고 다양한 응용 사례를 설명한다.2. Shunting Yard 알고리즘이란?Shunting Yard 알고리즘은 스택을 기반으로 중위 표기법을 후위 표기법으로 변환하는 알고리즘이다.중위 표기법 (Infix Notation)연산자가 피연산자 사이에 위치 (예: 3 + 4 * 2)후위 표기법 (Post..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ZxO8Q/btsLDKcZbf4/BRXJR1IUc7rPn0G2a3m1ZK/img.png)
1. 개요Python은 C 언어로 구현된 언어로, Python 코드에서 C 언어를 활용할 수 있다. 주로 두 가지 방식으로 C와 상호작용하며, 이를 통해 성능을 크게 향상시킬 수 있다.C 라이브러리 호출ctypes 라이브러리를 사용한다.Python 환경에서 직접 C 코드 실행C 확장 모듈 또는 C 확장 형을 사용한다.이 글에서는 두 가지 방식의 특징과 활용 사례를 살펴보고, 코드 예제를 통해 차이점을 이해한다.2. ctypesctypes는 Python 표준 라이브러리로, 외부 C 라이브러리와 상호작용할 수 있는 기능을 제공한다. 이를 통해 Python 코드에서 직접 C 라이브러리의 함수 호출 및 데이터 구조를 다룰 수 있다.주요 특징외부 라이브러리 호출동적으로 외부 C 라이브러리를 로드하고, 그 안의 함..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/kH0hC/btsLbSWl31O/abJSTZ64XW6HqkcHtZG1kK/img.jpg)
트렌드 코리아 2025 대한민국 소비트렌드 전망저자: 김난도, 전미영, 최지혜 외 7명출판: 미래의창출간: 2024.09.25.올해는 3월 2024를 시작으로 11월 2025, 두 권의 트렌드 코리아를 접했다. 다음 트렌트 코리아는 더 일찍 접할 수 있도록 주의깊게 살펴야겠다.아보하소소한 삶의 기쁨, 아주 보통의 하루를 추구한다.공진화살아남기 위해 경쟁사와의 협업을 진행한다.원포인트업나만의 가치를 찾아 가치를 상승시킨다.목차 서문 2025년 10대 소비트렌드 키워드 1 2024 대한민국 초효율주의 불황기 생존 전략 지리한 정체의 시간을 보내는 방법 시그니처의 힘 요즘가족 〈트렌드 코리아〉 선정 2024년 대한민국 10대 트렌드 상품 2 2025 트렌드 옴니보어 Savoring a Bit of Everyt..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/Btdky/btsKEQxmw22/ZkpcO49Q1rwJX4aDXyHtx1/img.jpg)
유목민의 투자의 정석저자: 유목민출판: 리더스북발행: 2024.01.17.재차거시뇌동매매하지 말고, 재료 차트 거래량 시황을 확인할 것.돈은 쉽게 벌 수 있는게 아니다열심히 노력하고 공부하고 또 공부할 것.목차 프롤로그 | 모든 시작하는 투자자를 위하여 [PART 1 성장을 위한 투자의 시작] CHAPTER 1 주식투자에 대한 메타인지 01 주식시장을 움직이는 힘 주식이란 무엇인가/ 주식은 기대감이다/ 주가를 상승시키는 두 요소/ 유동성과 실적이 따로 놀 때를 주의하라/ 기대감은 곱하기다 02 주식시장의 기초 용어 주가지수 ㆍ 주식의 종류 ㆍ 투자자 동향 ㆍ 거래원 ㆍ D+2 제도 ㆍ 상한가, 하한가 ㆍ 변동성완화장치 ㆍ 체결 강도 ㆍ 기본적 분석과 기술적 분석 ㆍ 공매도 03 투자 전략의 종류 단기투자..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bGOTgB/btsKEH1tUml/SXAeCrm3PvxBIkyrzRQwIk/img.png)
1. 개요데이터 분석과 머신러닝에서 다양한 데이터 소스를 결합하고 유의미한 특성을 발굴하는 과정은 매우 중요하다. 특히 대규모 데이터를 다룰 때 SQL을 통한 데이터 결합과 특성 엔지니어링(Feature Engineering)은 성능 최적화와 예측력 향상에 필수적인 작업이다. Spark는 SQL 구문과 고급 데이터 처리 도구를 제공해 방대한 데이터를 효율적으로 결합하고 가공할 수 있는 환경을 제공한다. 이번 글에서는 Spark SQL을 활용해 데이터 결합과 특성 엔지니어링 기법을 구현하는 방법을 다루어 실무에서 유용하게 적용할 수 있는 인사이트를 제공하고자 한다.2. Spark SQL을 활용한 데이터 결합Temporary View와 SQL 쿼리Spark에서는 DataFrame을 SQL 쿼리처럼 사용할 수..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/S43Ce/btsKDS3JJxI/0sEPGiaHsgBBroNTv4Fpl0/img.png)
1. Spark의 분류 모델(Classification)Spark MLlib은 다양한 분류 모델을 제공하여, 여러 가지 문제에 적합한 모델을 선택할 수 있다. 대표적으로 DecisionTreeClassifier, RandomForestClassifier, GBTClassifier 등이 있으며, 데이터 특성에 따라 모델을 결정할 수 있다.주요 분류 모델과 하이퍼 파라미터 설정Spark의 분류 모델은 각각 고유의 학습 방식과 하이퍼 파라미터를 가진다. 예를 들어, RandomForestClassifier는 여러 개의 결정 트리를 결합해 예측의 안정성을 높인다.from pyspark.ml.classification import RandomForestClassifier# 랜덤 포레스트 분류 모델 설정rf = R..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cdUkNm/btsKEkel5B6/2ZmaSJKiX3HZ2VxPz0FZhk/img.png)
1. Spark의 머신러닝 파이프라인 구축Spark MLlib은 대규모 데이터 환경에서의 머신러닝 모델 구축을 돕는 도구로, 데이터 전처리부터 모델 학습과 평가까지 일관성 있는 파이프라인을 구성할 수 있다. 파이프라인을 사용하면 데이터 전처리와 학습 단계를 통합하여 관리하기 편리하다.파이프라인(Pipeline) 설정과 구성 요소파이프라인은 여러 단계로 구성되어 있으며, 각 단계에서 데이터 전처리, 피처 엔지니어링, 모델 학습을 순차적으로 수행할 수 있다. Spark에서는 Pipeline 객체에 각 작업 단계를 정의하고 이를 순차적으로 연결한다.from pyspark.ml import Pipelinefrom pyspark.ml.feature import StringIndexer, StandardScaler..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/wXomq/btsKDB8WuTU/kMwLqw4tcNQufzCVcnscWK/img.png)
1. Spark 데이터 변형 및 집계 최적화Spark는 데이터를 변형하고 요약하는 데 특화된 기능을 제공하며, 대규모 데이터 처리에서 효율적으로 동작한다. 특히 groupBy()와 같은 집계 메서드와 윈도우 함수(Window Function)를 통해 데이터를 그룹화하고 누적 계산할 수 있어, 대용량 데이터 분석에 유용하다.groupBy()와 집계 함수groupBy()는 특정 컬럼을 기준으로 데이터를 그룹화해 집계할 때 사용하는 메서드다. Spark는 다양한 집계 함수를 제공하여 대규모 데이터에서도 성능 저하 없이 통계 계산을 가능하게 한다. Pandas에서는 groupby()와 agg()로 유사한 작업을 수행한다.예를 들어, 특정 연령별 데이터 개수를 집계해보자.# Pandas에서 groupby와 집계 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dxuPCd/btsKvLXgeHG/XqJQl8lP7uWZ1GLX9od17k/img.jpg)
12장 규칙 예외(Exceptions to the Rules)위에서 설명한 코딩 규칙들은 반드시 따라야 하는 필수 사항이다. 그러나 모든 좋은 규칙에 예외가 있듯이, 일부 경우에는 이러한 규칙에서 벗어날 수 있는 예외 상황이 있다. 여기서는 이러한 예외 사항에 대해 다룬다.12.1 기존의 스타일을 따르지 않는 코드 (Existing Non-conformant Code)이 스타일 가이드에 맞지 않는 기존 코드를 다룰 때는 규칙에서 벗어날 수 있다.가이드와 다른 방식으로 작성된 코드를 수정할 경우, 해당 코드의 로컬 규칙에 일관성을 맞추기 위해 이 가이드의 규칙에서 다소 벗어날 수 있다. 어떻게 해야 할지 확신이 서지 않을 때는 원 작성자나 현재 코드의 책임자에게 문의하는 것이 좋다. 일관성은 전체 코드뿐만..