data science 47

(Colab) Youtube 영상을 mp3 화일로 다운로드

Youtube 뮤직 동영상이나 유용한 동영상의 음성부분만 mp3 로 다운로드하고 플때 google 에서 "youtube to mp3"  로 검색하면 여러 사이트가 나오지만 이상한 음란 광고들이 나오기 때문에 꺼리게 되고 사이트 이동이 귀찮다.그래서 아래와 같이 직접 python으로 google colab에서 실행하면 아주 간단하게 다운로드 받을 수 있도록 하자. 사전 준비물: google account google 에 접속에 google 드라이브를 선택내 드라이브에서 마우스 오른쪽 클릭 메뉴에서 Google Colaboratory 를 선택 「+ Code」로 아래와 같이 코드 작성 ( 세션이 종료되면 설치된 패키지가 사라지니  Colab 접속시에 실행 ) !pip install pytubefix 「+ Co..

data science/python 2025.02.01

lambda, map, filter, reduce

lambda 함수를 고정으로 정의해 놓지 않고 필요시에 간단한 형식으로 실행하는 무명함수lambda 파라미터1, 파라미터2, ... : 연산 (파라미터1....)def adder(a, b):     return a + badder_lambda = lambda a, b: a + bdef to_upper(s):      return s.upper()to_upper_lambda = lambda s: s.upper() 프로그래밍을 편의를 위해 미리 정의해 둔 함수들 (map, filter, reduce)map map(function_to_apply, list_of_inputs)입력값의 수 = 처리후의 값의 수items = [1, 2, 3, 4, 5] squared = []for i in items:     sq..

data science/python 2025.01.25

digital filters in Python

1초간 30 샘플링(30Hz)의 노이즈를 가미한 5초간 진폭이 1Hz 인 사인파를 생성한 후iirfilter 함수로 N-order = 4,  고주파수 노이즈(>2.5Hz)를 Butterworth 형태의 lowpass 필터의 계수를 구하여 적용한다.import numpy as npimport scipy.signalnp.random.seed(42)  # for reproducibilityfs = 30  # sampling rate, Hzts = np.arange(0, 5, 1.0 / fs)  # time vector - 5 secondsys = np.sin(2*np.pi * 1.0 * ts)  # signal @ 1.0 Hz, without noiseyerr = 0.5 * np.random.normal(si..

Redis Pub/Sub

사용용도: 인터 PC간 통신, 인터 프로세스 통신, 인터 쓰레드 의 한방향 리얼타임 메세지 통신  ※  Redis :  메모리상의 데이터 구조체로서 퍼포먼스와 다양성으로 유명일본 모TV방송사의  PGA일본투어 생방송에 영어 선수명, 순위정보등의 Telop을 리얼타임으로 일본어로 변환하는 프로젝트에 사용. pip install redis Publisher (제공자) import redis # Connect to local Redis instance redis_client = redis.StrictRedis(host=''localhost'', port=6379, db=0) channel = ''my_channel'' while True:     message = input("Enter a message: "..

data science/python 2024.09.09

Thread vs ThreadPool vs ThreadPoolExecutor

ThreadPoolThreadPool ThreadPoolExecutor생성쓰레드 수수동 Thread 1 = Task 1개파라미터로 지정가능디폴트=(논리CPU수 + 4)파라미터로 지정가능디폴트=(논리CPU수 + 4)최적의 용도적은 수로 동시에 실행이 필요한 경우모든 쓰레드가 동시에 실행되지는 않고 비어 있거나 I/O 등의 기다림이 있어 양보된 쓰레드에 실행되게 된다.같은 태스크 내용으로 파라미터만 달리하여 많은 수의 쓰레드를 실행하는 경우.모든 쓰레드가 동시에 실행되지는 않고 비어 있거나 I/O 등의 기다림이 있어 양보된 쓰레드에 실행되게 된다. 같은 태스크 내용으로 파라미터만 달리하여 많은 수의 쓰레드를 실행하는 경우.결과의 리턴불가능가능가능취소기능불가능불가능실행되기 전의 태스크에 한해가능※ Thread..

data science/python 2024.05.11

threading / multiprocessing / asyncio

wikipedia에서 랜덤 100 페이지의 타이틀을 화일로 저장하는 샘플로서 multiprocessing과 async 를 이용하여 처리속도의 향상을 보여주고 있다.multiprcessing : 계산등의 CPU 의존적인 처리에 유리 async : 화일 I/O, 네트워크 I/O 등의 Blocking처리에 유리위의 둘을 이용하여 처리속도를 향상import asyncio                                         # Gives us async/await import concurrent.futures                        # Allows creating new processes import time from math import floor               ..

data science/python 2024.05.02

image byte 데이터 <-> numpy string

인터넷 스트림으로 이미지를 전송할 경우 이미지 데이터는 string 형식으로 변환해야 한다.import numpy as np import base64 import sys def base64_encode_image(a):     # base64 encode the input NumPy array     return base64.b64encode(a).decode("utf-8") def base64_decode_image(a, dtype, shape):     # if this is Python 3, we need the extra step of encoding the     # serialized NumPy string as a byte object     if sys.version_info.major =..

data science/python 2024.04.29