일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- airflow subdag
- correlation
- chatGPT
- youtube data
- requests
- API Gateway
- grad-cam
- 공분산
- UDF
- integrated gradient
- GenericGBQException
- GCP
- Counterfactual Explanations
- login crawling
- 상관관계
- Retry
- top_k
- tensorflow text
- gather_nd
- TensorFlow
- spark udf
- XAI
- BigQuery
- 유튜브 API
- Airflow
- API
- hadoop
- flask
- session 유지
- subdag
- Today
- Total
목록Python (36)
데이터과학 삼학년
파이썬은 정말 편한 언어다. 변수의 타입이나, 파라미터의 타입을 지정할 필요가 없다. 타입도 계속 바꿔서 사용할 수 있다. 그러나, 이런 타입을 지정해서 처리하는 방법도 있다. def example_function(param1: int = 0, param2: str = "default_value") -> str: # 함수 내용 result = f"{param1} - {param2}" return result # 함수 사용 예시 output = example_function(42, "custom_value") print(output) 숫자 덧셈 함수 def add_numbers(a: float, b: float) -> float: return a + b result = add_numbers(3.5, 2.7..
소개 - 싱글턴 패턴은 어플리케이션에서 클래스의 인스턴스가 단 하나만 생성되도록 하는 디자인 패턴 중 하나 - 즉, class를 통해 여러 인스턴스를 생성하더라도 생성한 인스턴스는 하나의 포인터만 바라보게 되는 개념 - 파이썬에서는 이를 다양한 방식으로 구현 가능 1. 모듈을 이용한 싱글턴 - 가장 간단한 싱글턴 구현 방법 중 하나는 모듈을 이용. - 파이썬에서 모듈은 한 번만 로드되기 때문에 모듈 내부에 상태를 저장하여 싱글턴을 구현 가능 # singleton_module.py class SingletonClass: _instance = None def __new__(cls): if not cls._instance: cls._instance = super().__new__(cls) return cls...
어트리뷰트 (Attribute) - 어트리뷰트는 파이썬 객체(object) 내에서 저장된 데이터(변수)나 메서드를 나타냄 - 객체의 속성(attribute)은 해당 객체의 상태나 동작을 나타내며, 객체의 내부 변수나 메서드 이름을 가리킴 - 어트리뷰트는 점(.)을 사용하여 객체의 이름 공간(namespace)에서 접근 가능 - 클래스의 멤버 변수나 메서드는 해당 클래스의 어트리뷰트 class MyClass: class_attribute = 42 # 클래스 어트리뷰트 def __init__(self): self.instance_attribute = 10 # 인스턴스 어트리뷰트 obj = MyClass() print(obj.instance_attribute) # 인스턴스 어트리뷰트 접근 print(MyCla..
파이썬에서는 실수를 표현하는 방법으로 부동소수점을 쓴다. >> 간단히 말해 0.1이 진짜 0.1이 아니다. 0.1 + 0.2 # 0.30000000000000004 파이썬의 0.1은 실제로 아래와 같이 0.1이 아닌 0.1에 가까운 값을 나타낸다. 0.1000000000000000055511151231257827021181583404541015625 따라서 0.1+02 = 0.3이 아니게 됨...(실제) 이렇기 때문에 계산할때 특히 금융데이터에서 유의해야함. 부동소수점 연산의 정확성 유지하기 부동소수점 연산에서 주의해야 할 몇 가지 일반적인 문제는 반올림 오차와 비교 연산의 부정확성 이를 방지하기 위해 파이썬에서는 Decimal 모듈을 제공 Decimal 모듈은 고정 소수점 연산을 수행하며, 정확한 결과..
SOLID Principles : improve Object-Oriented Design in Python SOLID 원칙 - oop ?! → 간단히 말해 pyhton의 class 기능 → 붕어빵 틀을 만들어 여러 붕어빵을 찍어내는 것과 같은 것 - 코드를 보다 효율적이고 유지보수하기 쉬우며, 효과적으로 작성하고자 만든 어떤 원칙이 있는데…대표적인 것이 SOLID 원칙 - SOLID 원칙별로 한글자씩 따서 만든 것으로 생각한 것 처럼 총 5가지 원칙이 있음 S**ingle-responsibility principle (SRP) O**pen–closed principle (OCP) L**iskov substitution principle (LSP) I**nterface segregation principl..
*와 **는 파이썬에서 여러 인자를 처리할 때 사용하는 연산자 *를 사용하면 리스트, 튜플, 세트 등의 iterable한 객체를 풀어서 함수의 인자로 전달 -> 이때 각 요소들이 함수의 인자로 전달 def foo(a, b, c): print(a, b, c) lst = [1, 2, 3] foo(*lst) # foo(1, 2, 3)과 동일 **를 사용하면 딕셔너리 객체를 풀어서 함수의 인자로 전달할 수 있습니다. 이때 각 키-값 쌍이 함수의 인자로 전달 def bar(x, y, z): print(x, y, z) dct = {'x': 1, 'y': 2, 'z': 3} bar(**dct) # bar(x=1, y=2, z=3)과 동일 따라서 *와 **를 이용해서 iterable한 객체나 딕셔너리 객체를 풀어서 함..
클린코드 - 클린 코드란 무엇일까? 공식적으로 지정한 디자인패턴을 잘 따른다던가, 파이썬의 경우 pep-8이라고 파이썬 개발을 하는데 있어 권장되는개발 스타일을 잘 따르는 것일까?? - 어떤 것보다 나는 Readable한 코드가 클린코드라고 생각한다. - Readable한 코드란 인간의 아이디어를 컴퓨터에 전달하는 것을 넘어, 나의 아이디어를 다른 개발자가 쉽게 확인하고 유지보수를 하기 쉽게 만드는 코드라고 생각한다. - 유지보수성 향상, 기술부채 감소, 애자일 개발을 통한 효과적인 작업을 위함 - 기술 부채 : 나쁜 결정이나 적당한 타협의 결과로 생긴 소프트웨어적 결함으로, 코드를 지금 당장 바꾸는 것보다 미래에 변경하는 것은 훨씬 어렵기 때문이고, 시간의 흐름에 따라 어려움이 가중되는 이자와 같은 개..
pandas를 이용한 데이터 분석을 하다보면 간단한 함수를 적용하여 새로운 컬럼을 생성하는 것은 매우 흔한일이다. 예를 들면 아래 코드 예시처럼 커스텀 function이나 lambda를 이용하여 원하는 형태의 컬럼을 생성한다. def detect_language(text): """Detects the text's language.""" translate_client = translate.Client() result = translate_client.detect_language(text) return result["language"] # 해당 메시지가 어느나라 언어인지 확인하는 컬럼 생성 df['langauge']= df['message'].apply(detect_language) # 메시지 길이 산정 d..