Чтобы создать функцию корреляции Python, вы можете использовать различные методы в зависимости от конкретных требований и доступных библиотек. Вот несколько разных подходов:
-
Использование NumPy:
import numpy as np def correlate_numpy(x, y): return np.correlate(x, y, mode='same') # Example usage: x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] result = correlate_numpy(x, y) print(result) -
Использование SciPy:
from scipy.signal import correlate def correlate_scipy(x, y): return correlate(x, y, mode='same') # Example usage: x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] result = correlate_scipy(x, y) print(result) -
Использование чистого Python:
def correlate_python(x, y): m = len(x) n = len(y) result = [0] * (m + n - 1) for i in range(m): for j in range(n): result[i + j] += x[i] * y[j] return result # Example usage: x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] result = correlate_python(x, y) print(result)
Это всего лишь несколько примеров того, как можно реализовать функцию корреляции в Python. Библиотеки NumPy и SciPy предлагают оптимизированные функции для вычислений корреляции, а подход на чистом Python дает больше контроля, но может работать медленнее для больших наборов данных.