전체 글147 [LeetCode] 125. Valid Palindrome [Python(파이썬)] '파이썬 알고리즘 인터뷰'를 보고 작성한 글입니다. 😀 문제 👉 1. 문제 (유효한 팰린드롬) 주어진 문자열이 펠린드롬인지 확인하라. 대소문자를 구분하지 않으며, 영문자와 숫자만을 대상으로 한다. 2. 풀이 알파벳과 숫자가 아닌 경우 제외 소문자 변환 (대소문자를 구분하지 않으므로) 문자의 앞뒤 비교 3. 코드 리스트를 이용한 풀이 class Solution: def isPalindrome(self, s: str) -> bool: strs = [] for char in s: if char.isalnum(): # 알파벳과 숫자인지 확인 strs.append(char.lower()) while len(strs) > 1: if strs.pop(0) != strs.pop(): return Fals.. 2021. 11. 23. [Machine Learning] 사이킷 런(scikit-learn) 시작하기 사이킷 런(scikit-learn) scikit-learn 특징 다양한 머신러닝 알고리즘을 구현한 파이썬 라이브러리 심플하고 일관성 있는 API, 유용한 온라인 문서, 풍부한 예제 머신러닝을 위한 쉽고 효율적인 개발 라이브러리 제공 다양한 머신러닝 관련 알고리즘 개발을 위한 프레임워크와 API 제공 많은 사람들이 사용하며 다양한 환경에서 검증된 라이브러리 scikit-learn 주요 모듈 예제 데이터 sklearn.datasets : 사이킷런에 내장되어 예제로 제공하는 데이터 세트 피처 처리 sklearn.preprocessing : 데이터 전처리에 필요한 다양한 가공 기능 제공(문자열을 숫자형 코드 값으로 인코딩, 정규화, 스케일링 등) sklearn.feature_selection : 알고리즘에 큰 .. 2021. 11. 23. [Machine Learning] Machine Learning 개념 머신러닝(Machine Learning) 명시적인 프로그래밍 없이 컴퓨터가 학습하는 능력을 갖추게 하는 연구 분야 머신러닝은 데이터를 통해 다양한 패턴을 감지하고, 스스로 학습할 수 있는 모델 개발에 초점 머신러닝 분류 지도 학습(supervised Learning) 지도 학습은 주어진 입력으로 부터 출력 값을 예측할 때 사용 입력과 정답 데이터를 사용해 모델을 학습 시킨 후 새로운 입력 데이터에 대한 정확한 출력을 예측하는 것이 목표 분류와 회귀 지도 학습 알고리즘은 분류(classification)와 회귀(regression)로 구분 분류는 입력 데이터를 미리 정의된 여러개의 클래스 중 하나로 예측 분류는 클래스의 개수가 2개인 이진 분류(Binary Classification)와 3 이상인 다중 분.. 2021. 11. 23. [모니터링] 'Elatic Stack'을 이용한 서울시 지하철 대시보드 '김종민님의 'Elastic Stack을 이용한 서울시 지하철 대시보드 다시 만들기''를 보고 작성한 글입니다. 😀 기존의 대시보드와 다른 점 데이터는 2018년이 아닌 2019년 데이터로 진행하였습니다. javascript가 아닌 python으로 진행하였습니다. 공공데이터 '서울시 역코드로 지하철역 위치 조회'가 더이상 서울 열린데이터광장에서 제공하지 않아 지하철역 키워드를 Kakao Map Api를 통해 구현하였습니다. Logstash의 @timestamp를 사용할 때는 한국 시간의 -9시간을 하기 때문에 @timestamp 값을 통해 시간을 구할 때 +9를 하였습니다. kibana의 region map 이 더이상 지원이 되지 않아 Maps -> Cluste.. 2021. 11. 23. [모니터링] InfluxDB + Telegraf + Grafana 설치 (Amazon Linux2) AWS EC2에 간다한 모니터링을 구축해보자! 1. InfluxDB 1.1 Yum Repository에 influxdb.repo 추가 cat 2021. 11. 23. [mongoDB] mongoDB 기본 사용법 및 예제 Database 생성 use DATABASE_NAME > use test switched to test 데이터베이스 존재하지 않을 경우, 생성 후 생성된 데이터베이스 사용 데이터베이스 존재할 경우, 데이터베이스 사용 조회 > show dbs local 0.000GB 데이터베이스 리스트에서 확인하려면 최소 한개의 Document를 추가해야한다. 삭제 > use test switched to test > db.dropDatabase() { "dropped" : "test", "ok" : 1 } 삭제 전에, 삭제하고자 하는 db를 선택해야 한다. Collection 생성 db.createCollection(name, [options]) > db.createCollection(nba, [options]) { ".. 2021. 11. 23. [mongoDB] 도커를 이용한 mongoDB 설치 mongodb 설치 docker run -d --name mongodb -v /Users/0culty/docker/mongodb:/data/db -p 27017:27017 mongo:latest -d : 컨테이너를 백그라운드에서 동작하는 애플리케이션을 실행할 때 설정 -v : 호스트와 컨테이너의 디렉토리를 연결 (볼륨을 설정하지 않고 컨테이너를 삭제하면 컨테이너에 저장되어있는 DB의 정보도 삭제되어 복구할 수가 없음) -p : [호스트 port]:[컨테이너 port] (컨테이너의 port로 접근하기 위해서 docker의 포트 포워딩으로 연결) docker 자주 사용하는 옵션 정리 옵션 설명 -d detached mode 흔히 말하는 백그라운드 모드 -p 호스트와 컨테이너의 포트를 연결 (포워딩) -v 호.. 2021. 11. 23. [Kafka] 카프카 로그 보관 주기 [카프카] 데이터 보관 카프카는 컨슈머(Consumer)가 데이터를 가져가더라도 토픽(Topic)의 데이터는 삭제되지 않는다. 컨슈머나 프로듀서(Proucer) 또한 데이터의 삭제를 요청할 수 없다. 오직 브로커 만이 데이터를 삭제할 수 있다. 데이터 삭제는 파일 단위 '로그 세그먼트 (log segment)'로 이루어진다. 로그 세그먼트 (log segment) 로그 세그먼트에는 다수의 데이터가 들어 있기 때문에 다른 데이터베이스처럼 특정 데이터를 삭제할 수 없다. 세그먼트는 데이터가 쌓이는 동안 파일 시스템으로 열려있으며 카프카 옵션에 따라 파일이 닫힌다. 세그먼트 파일이 닫히는 간격을 줄이기 위해 log.segment.bytes 를 작은 용량으로 설정하면 데이터들을 저장하는 동안 세그먼트 파일을 주.. 2021. 11. 23. [Kafka] 카프카 커맨드 라인 툴 (command-line tool) 최원영님의 ‘아파치 카프카 애플리케이션 프로그래밍 with 자바’를 보고 작성한 글입니다. 😀 1. kafka-topics.sh 토픽이란 카프카에서 데이터를 구분하는 가장 기본적인 개념(RDBMS의 테이블과 유사)으로 최소 1개 부터 많게는 브로커 당 4,000개 및 클러스터 당 200,000개 이하의 파티션으로 구성된다. (출처) 토픽 생성 (옵션 x) $ kafka-topics.sh \ --create \ --bootstrap-server ip-kafka:9092 \ --topic example.kafka.1 create: 토픽을 생성하는 명령어이다. bootstrap-server: 토픽을 생성할 카프카 클러스터의 브로커 ip와 port 작성한다. (브로커가 여러개라면 여러개의 브로커 ip와 port.. 2021. 11. 23. 이전 1 ··· 8 9 10 11 12 13 14 ··· 17 다음