РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
165 of 541 menu

Функция ediff1d

Функция ediff1d вычисляет разности между соседними элементами вдоль одномерного массива. Первым параметром функция принимает массив, для которого нужно найти разности. Вторым параметром можно передать значения, которые будут подставлены перед вычислением разностей.

Синтаксис

np.ediff1d(ary, to_end=None, to_begin=None)

Пример

Давайте вычислим разности между соседними элементами одномерного массива чисел:

import numpy as np arr = np.array([1, 3, 6, 10, 15]) res = np.ediff1d(arr) print(res)

Результат выполнения кода:

[2 3 4 5]

Функция вернула разности между элементами: 3-1=2, 6-3=3, 10-6=4, 15-10=5.

Пример

Давайте добавим значения в начало и конец массива с помощью параметров to_begin и to_end:

import numpy as np arr = np.array([2, 4, 8, 16]) res = np.ediff1d(arr, to_begin=0, to_end=10) print(res)

Результат выполнения кода:

[0 2 4 8 10]

Сначала в массив добавилось значение 0, затем вычислены разности: 4-2=2, 8-4=4, 16-8=8, и в конце добавлено 10.

Пример

Рассмотрим работу функции с массивом, содержащим отрицательные числа:

import numpy as np arr = np.array([-5, -2, 0, 3, 7]) res = np.ediff1d(arr) print(res)

Результат выполнения кода:

[3 2 3 4]

Функция корректно обрабатывает отрицательные числа, вычисляя разности: -2-(-5)=3, 0-(-2)=2, 3-0=3, 7-3=4.

Пример

Если передать двумерный массив, функция автоматически преобразует его в одномерный и вычислит разности:

import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6]]) res = np.ediff1d(arr) print(res)

Результат выполнения кода:

[1 1 1 1 1]

Массив был преобразован в одномерный [1, 2, 3, 4, 5, 6], и для него вычислены разности: все разности равны 1.

Пример

Используем параметры to_begin и to_end для добавления нескольких значений в виде списка:

import numpy as np arr = np.array([10, 20, 30]) res = np.ediff1d(arr, to_begin=[100, 200], to_end=[300, 400]) print(res)

Результат выполнения кода:

[100 200 10 10 300 400]

Функция добавила значения 100 и 200 перед вычислением разностей, затем вычислила разности 20-10=10 и 30-20=10, и в конце добавила значения 300 и 400.

Смотрите также

  • функцию diff,
    которая вычисляет разности между элементами по указанной оси
  • функцию gradient,
    которая вычисляет градиент массива с использованием разностей
  • функцию convolve,
    которая выполняет свёртку двух одномерных массивов
  • функцию interp,
    которая выполняет линейную интерполяцию по заданным точкам
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить