Language/Python

    Json Schema를 사용한 Json 유효성 검사하기

    JSON Schema는 JSON 데이터의 유효성을 정의하고 검사하는 데 사용되는 강력한 도구입니다. Python에서 JSON Schema를 활용하면 데이터의 일관성과 유효성을 보장하고 데이터 규격을 명확히 정의할 수 있습니다. 이번 글에서는 Python에서 JSON Schema의 개요와 사용법에 대해 알아보겠습니다. JSON Schema란 무엇인가요? JSON Schema Welcome to the JSON Schema Community With over 60 million weekly downloads, JSON Schema has a large and active developer community across the world. Join the Community to learn, share idea..

    [numpy] r_, c_ 함수에 대하여

    numpy 라이브러리에서 제공되는 r_과 c_ 함수는 배열을 생성하고 결합하는 데 유용한 도구입니다. 이 두 함수는 배열을 만들거나 배열을 연결하는 데 사용되며, 주로 슬라이싱, 배열 결합, 또는 인덱싱 작업을 수행하는 데 활용됩니다. 각 함수의 기능과 사용법에 대해 알아보겠습니다. numpy.r_ numpy.r_은 배열을 연결하여 행 방향(axis 0)으로 확장하는 데 사용됩니다. 이 함수는 배열을 수평 방향으로 결합합니다. 여러 슬라이스 또는 배열을 사용하여 새로운 배열을 만들 수 있습니다. 예를 들어, 다음은 r_ 함수를 사용하여 배열을 생성하는 예제입니다: import numpy as np # 슬라이싱을 이용한 배열 생성 arr1 = np.array([1, 2, 3]) arr2 = np.array..

    [Python] Sliding Window

    def sliding_window(series, window_size, step = 1): """series is a column of a dataframe""" for start_row in range(0, len(series) - window_size + 1, step): yield series[start_row:start_row + window_size] tmp = np.arange(100) list(sliding_window(tmp, 10, 5)) 위의 코드를 실행하면 0부터 99까지의 데이터를 10개씩 5개씩 이동하면서 데이터를 만들어낸다. 결과는 아래와 같다. [array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]), array([ 5, 6, 7, 8, 9, 10, 11, 12, ..

    [Python] Poetry - Jupyter

    [Python] Poetry - Jupyter

    Poetry는 파이썬 개발 시 의존성 관리와 패키징을 위한 툴이다. pip와 venv를 통해 프로젝트의 가상환경을 자동으로 생성하고 의존성을 관리해줌으로써 개발용이성을 향상시켜준다. 여러 개발자가 동일한 환경에서 개발할 수 있도록 지원을 한다. 따라서 개발자의 머신에서 Global로 설치된 의존성이 아닌 프로젝트에 필요한 버전의 의존성을 동일하게 유지해 준다. 아래 전체적인 흐름을 정리한 그림이다. 위의 흐름에 맞춰서 하나씩 정리해본다. 1. Poetry 설치 poetry를 사용하기 위해 설치가 필요하다. 나는 1.4.2 버전이 설치된 상태이다. $ pip install poetry $ poetry -V Poetry (version 1.4.2) 2. 프로젝트에 poetry 초기화 하기 $poetry in..

    [TroubleShooting] pyenv 문제 해결

    _bz2, _ctypes, readline, _ssl 등 ModuleNotFoundError pyenv 설치 이후 아래와 같은 문제가 발생하는 경우가 있다. 필요한 라이브러리들이 설치가 안된 경우다. 문제 Downloading Python-3.8.16.tar.xz... -> https://www.python.org/ftp/python/3.8.16/Python-3.8.16.tar.xz Installing Python-3.8.16... Traceback (most recent call last): File "", line 1, in File "/home/linuxias/.pyenv/versions/3.8.16/lib/python3.8/bz2.py", line 19, in from _bz2 import BZ2..

    abstract class에서 abstract property 생성하기

    python 3.3 버전 이전까지는 @abstractproperty 라는 annotation이 제공되었습니다. 하지만, python 3.3 버전 이상에서는 사용할 수 없습니다. 만약 사용하게 되면, 아래와 같은 경고 문구가 나타납니다. 'abc.abstractproperty' is deprecated since Python 3.3. Use 'property' with 'abc.abstractmethod' instead. less... (Ctrl+F1) Inspection info: This inspection highlights usages of Python functions, classes or methods which are marked as deprecated (which raise a Deprec..