>  기사  >  백엔드 개발  >  업무 효율성을 높이기 위해 numpy 함수 팁과 예시를 공유하세요.

업무 효율성을 높이기 위해 numpy 함수 팁과 예시를 공유하세요.

王林
王林원래의
2024-01-26 09:38:06470검색

업무 효율성을 높이기 위해 numpy 함수 팁과 예시를 공유하세요.

작업 효율성 향상을 위한 numpy 함수 팁 및 예제 공유

소개:
데이터 처리 및 과학 컴퓨팅 분야에서는 Python의 numpy 라이브러리를 사용하는 것이 매우 일반적입니다. Numpy는 대규모 데이터 작업 및 계산을 쉽게 수행할 수 있는 일련의 강력한 기능과 도구를 제공합니다. 이 기사에서는 작업 효율성을 향상시키고 구체적인 코드 예제를 제공하기 위한 몇 가지 numpy 함수 기술을 소개합니다.

1. 벡터화 작업
Numpy의 벡터화 작업은 가장 강력한 기능 중 하나입니다. 벡터화 작업을 통해 각 요소에 대한 작업에 for 루프를 사용하지 않아도 되므로 작업 속도가 크게 향상됩니다.

샘플 코드 1: 행렬의 행과 열의 합을 계산합니다

import numpy as np

m = np.random.rand(1000, 1000)

# 使用for循环
row_sum = np.zeros(1000)
col_sum = np.zeros(1000)
for i in range(1000):
    for j in range(1000):
        row_sum[i] += m[i][j]
        col_sum[j] += m[i][j]

# 使用矢量化操作
row_sum = np.sum(m, axis=1)
col_sum = np.sum(m, axis=0)

샘플 코드 2: 두 배열의 가중 평균을 계산합니다

import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
weights = np.array([0.2, 0.3, 0.5])

# 使用for循环
result = 0
for i in range(3):
    result += a[i] * b[i] * weights[i]

# 使用矢量化操作
result = np.dot(np.multiply(a, b), weights)

2. Broadcast
Broadcasting은 서로 다른 차원의 배열을 허용하는 numpy의 함수입니다. be 시간 계산이 매우 편리해집니다. 브로드캐스트를 사용하면 명시적인 차원 일치 없이 배열에서만 작업할 수 있습니다.

샘플 코드 3: 배열의 평균 제곱 오차 계산

import numpy as np

a = np.array([1, 2, 3])
mean = np.mean(a)
var = np.sqrt(np.mean((a - mean) ** 2))

샘플 코드 4: 행렬의 각 행에서 해당 행의 평균을 뺍니다

import numpy as np

m = np.random.rand(1000, 1000)
mean = np.mean(m, axis=1)
m -= mean[:, np.newaxis]

3 슬라이싱 및 인덱싱 기술
Numpy는 다양한 슬라이싱을 제공합니다. 배열을 편리하게 가로채고 필터링할 수 있는 인덱싱 기술.

샘플 코드 5: 배열에서 일부 요소를 무작위로 추출

import numpy as np

a = np.arange(100)
np.random.shuffle(a)
selected = a[:10]

샘플 코드 6: 조건을 충족하는 배열의 요소 필터링

import numpy as np

a = np.array([1, 2, 3, 4, 5, 6])
selected = a[a > 3]

4 일반 함수 및 집계 함수
Numpy는 수많은 일반 함수와 집계를 제공합니다. 배열에 대한 다양한 수학 및 통계 연산을 편리하게 수행할 수 있는 함수입니다.

샘플 코드 7: 배열 요소의 절대값 가져오기

import numpy as np

a = np.array([-1, -2, -3, 4, 5, 6])
abs_a = np.abs(a)

샘플 코드 8: 배열의 합계, 평균 및 최대값 계산

import numpy as np

a = np.array([1, 2, 3, 4, 5, 6])
sum_a = np.sum(a)
mean_a = np.mean(a)
max_a = np.max(a)

요약:
이 문서에서는 작업 개선을 위한 몇 가지 numpy 함수 기술을 소개합니다. 효율성을 높이고 구체적인 코드 예제를 제공합니다. 벡터화 작업, 브로드캐스팅, 슬라이싱 및 인덱싱 기술, 일반 및 집계 함수 사용을 통해 데이터 처리 및 과학 컴퓨팅에서 numpy를 보다 효율적으로 사용할 수 있습니다. 이 글이 모든 분들의 업무에 도움이 되었으면 좋겠습니다!

위 내용은 업무 효율성을 높이기 위해 numpy 함수 팁과 예시를 공유하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.