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

Функция modf

Функция modf разделяет каждый элемент входного массива на целую и дробную части. Она возвращает кортеж из двух массивов: первый содержит дробные части, второй - целые. Дробные части всегда имеют тот же знак, что и исходное число.

Синтаксис

np.modf(x, [out1, out2], [where=True])

Параметры:

  • x - входной массив или скаляр;
  • out1, out2 - необязательные массивы для сохранения результатов;
  • where - условие, при котором вычисления производятся.

Пример

Разделим массив положительных чисел на дробную и целую части:

import numpy as np arr = np.array([1.75, 2.3, 3.99, 4.0]) fractional, integral = np.modf(arr) print("Fractional parts:", fractional) print("Integral parts:", integral)

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

"Fractional parts: [0.75 0.3 0.99 0. ]" "Integral parts: [1. 2. 3. 4.]"

Пример

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

import numpy as np arr = np.array([-1.75, -2.3, -3.99, -4.0]) fractional, integral = np.modf(arr) print("Fractional parts:", fractional) print("Integral parts:", integral)

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

"Fractional parts: [-0.75 -0.3 -0.99 -0. ]" "Integral parts: [-1. -2. -3. -4.]"

Обратите внимание: знак дробной части совпадает со знаком исходного числа.

Пример

Используем функцию modf с двумерным массивом:

import numpy as np arr = np.array([[5.67, 8.12], [3.45, 6.78]]) fractional, integral = np.modf(arr) print("Original array:") print(arr) print("Fractional parts:") print(fractional) print("Integral parts:") print(integral)

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

"Original array:" [[5.67 8.12] [3.45 6.78]] "Fractional parts:" [[0.67 0.12] [0.45 0.78]] "Integral parts:" [[5. 8.] [3. 6.]]

Пример

Применим функцию к массиву целых чисел:

import numpy as np arr = np.array([5, 8, 3, 6]) fractional, integral = np.modf(arr) print("Fractional parts:", fractional) print("Integral parts:", integral)

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

"Fractional parts: [0. 0. 0. 0.]" "Integral parts: [5. 8. 3. 6.]"

Для целых чисел дробная часть всегда равна нулю, а целая часть - самому числу.

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

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