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

Функция copysign

Функция copysign возвращает новый массив, в котором каждый элемент первого массива получает знак соответствующего элемента второго массива. Первым параметром передаётся массив значений, у которых меняется знак. Вторым параметром передаётся массив значений, чей знак будет скопирован. Функция работает поэлементно и поддерживает вещественные числа.

Синтаксис

np.copysign(x1, x2)

Пример

Давайте скопируем знак отрицательных чисел из одного массива в положительные числа другого массива:

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

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

[-1 -2 -3 -4 -5]

Пример

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

import numpy as np arr = np.array([10, 20, 30, 40, 50]) sign_arr = np.array([-1, 1, -1, 1, -1]) res = np.copysign(arr, sign_arr) print(res)

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

[-10 20 -30 40 -50]

Пример

Давайте скопируем знак из массива вещественных чисел в массив целых чисел:

import numpy as np arr = np.array([1, 2, 3, 4, 5]) sign_arr = np.array([-0.5, 0.7, -1.2, 0.3, -0.9]) res = np.copysign(arr, sign_arr) print(res)

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

[-1 2 -3 4 -5]

Пример

Давайте используем copysign для преобразования отрицательного нуля в положительный:

import numpy as np arr = np.array([-0.0, 0.0, -0.0, 0.0]) sign_arr = np.array([1, -1, 1, -1]) res = np.copysign(arr, sign_arr) print(res)

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

[ 0. -0. 0. -0.]

Пример

Давайте применим copysign к многомерным массивам:

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

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

[[-1 2 -3] [ 4 -5 6]]

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

  • функцию sign,
    которая возвращает знак числа
  • функцию absolute,
    которая возвращает абсолютное значение числа
  • функцию negative,
    которая меняет знак числа на противоположный
  • функцию frexp,
    которая разбивает число на мантиссу и экспоненту
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить