Методы расчета производных параметров с примерами кода

“derived_parameters” — английский термин. Это относится к параметрам, которые рассчитываются или выводятся из других переменных или параметров в системе или алгоритме. Вот несколько методов с примерами кода для расчета производных параметров:

  1. Скользящее среднее.
    Скользящее среднее — это часто используемый производный параметр при анализе временных рядов. Он вычисляет среднее значение указанного окна значений.
def moving_average(data, window_size):
    moving_averages = []
    for i in range(len(data) - window_size + 1):
        window = data[i:i+window_size]
        average = sum(window) / window_size
        moving_averages.append(average)
    return moving_averages
  1. Стандартное отклонение.
    Стандартное отклонение – это мера вариации или дисперсии в наборе данных. Его можно рассчитать как квадратный корень дисперсии.
import statistics
def calculate_std_deviation(data):
    return statistics.stdev(data)
  1. Анализ главных компонентов (PCA):
    PCA – это метод уменьшения размерности, который рассчитывает новые производные переменные, называемые главными компонентами, которые фиксируют наиболее важную информацию в исходном наборе данных.
from sklearn.decomposition import PCA
def perform_pca(data, num_components):
    pca = PCA(n_components=num_components)
    transformed_data = pca.fit_transform(data)
    return transformed_data
  1. Расчет градиента.
    Градиент — это производный параметр, используемый в алгоритмах оптимизации для определения направления и скорости изменения функции.
import numpy as np
def calculate_gradient(function, variables):
    gradients = np.gradient(function(*variables))
    return gradients
  1. Среднее взвешенное значение.
    Среднее взвешенное значение рассчитывается путем присвоения разных весов значениям в наборе данных и получения суммы взвешенных значений.
def weighted_average(data, weights):
    weighted_sum = sum(value * weight for value, weight in zip(data, weights))
    total_weight = sum(weights)
    return weighted_sum / total_weight