NumPy 자기 상관

Vaibhav Vaibhav 2021년6월20일
NumPy 자기 상관

데이터 과학에서 데이터 세트의 변수는 어떤 방식 으로든 서로 관련 될 수 있습니다. 관계는 직접 비례하거나 간접적으로 비례 할 수 있습니다. 하나의 변수를 간단히 변경하면 일부 변수가 약간 또는 크게 변경 될 수 있습니다. 이 현상을 상관 관계라고합니다.

자기 상관은 시간 신호 세트와 자신의 오래된 버전 간의 상관 관계를 나타냅니다. 두 세트의 시간 신호에는 그들 사이에 약간의 시간 차이가 있습니다.

NumPy에서 자기 상관 계산

강력한 데이터 과학 라이브러리 인 NumPy에는 두 1D 시퀀스 간의 상관 관계를 찾는 데 사용할 수있는 내장 함수correlate()가 있습니다. 두 개의 1D 배열과 모드 유형을 허용합니다.

모드 유형은 valid, same, full일 수 있으며 이 매개 변수는 선택 사항입니다. 이 매개 변수의 기본값은 valid입니다.

이 기능에 대한 자세한 내용은 공식 문서를 참조하십시오.

import numpy

myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
myArray = numpy.array(myArray)
result = numpy.correlate(myArray, myArray, mode="full")
result = result[result.size // 2 :]
print(result)

출력:

[385 330 276 224 175 130  90  56  29  10]

위의 코드에서 먼저 숫자 목록을 정의한 다음 NumPy의array()메소드를 사용하여 NumPy 배열로 변환합니다. 그런 다음 관심있는 메서드correlate()를 호출하여 데이터의 자기 상관을 계산합니다. 계산을 위해full모드를 사용하고 있습니다.

결과는result변수에 저장되고 슬라이스됩니다. 슬라이싱 부분은correlate()메소드가2 * 배열의 길이-1크기의 배열을 반환하고 관심 값이 후반부에 놓여 있기 때문에 중요합니다. 즉,[(result.size // 2), result.size).

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.