Pandas 연산 속도 향상

Beginner

This tutorial is from open-source community. Access the source code

소개

이 랩에서는 Cython, Numba, 그리고 pandas.eval() 을 사용하여 pandas DataFrame 의 연산을 가속화하는 다양한 기술을 안내합니다. 이러한 기술은 대규모 데이터셋 작업 시 상당한 속도 향상을 제공할 수 있습니다.

VM 팁

VM 시작이 완료되면, 왼쪽 상단을 클릭하여 Notebook 탭으로 전환하여 실습을 위한 Jupyter Notebook에 접근하십시오.

때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한으로 인해 연산의 유효성 검사는 자동화될 수 없습니다.

학습 중 문제가 발생하면 언제든지 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 즉시 문제를 해결해 드리겠습니다.

설정 및 샘플 데이터 생성

시작하기 전에, 필요한 모듈을 import 하고 샘플 DataFrame 을 생성해 보겠습니다.

## Import necessary modules
import pandas as pd
import numpy as np

## Create a sample DataFrame
df = pd.DataFrame(
    {
        "a": np.random.randn(1000),
        "b": np.random.randn(1000),
        "N": np.random.randint(100, 1000, (1000)),
        "x": "x",
    }
)
df

순수 Python 함수 구현

DataFrame 의 행별로 작동하는 순수 Python 함수를 생성하는 것으로 시작합니다.

## Define a function
def f(x):
    return x * (x - 1)

## Define another function that uses the first function
def integrate_f(a, b, N):
       s = 0
       dx = (b - a) / N
       for i in range(N):
           s += f(a + i * dx)
       return s * dx

요약

축하합니다! Pandas 연산 속도 향상 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.