Таким образом, для натурального показателя степень представляет собой укороченную запись умножения одинаковых множителей. В данном случае чтобы найти значение степени, следует перемножить число, которое является основанием, само на себя указанное количество раз.
Пример 1
Рассмотрим возведение числа 3 в степень 5. Согласно приведенному выше базовому определению:
35 = 3 × 3 × 3 × 3 × 3 = 243
Для операций возведения во вторую и третью степень имеются устоявшиеся названия: возведение в квадрат и куб, соответственно. Таким образом, выражение «32» может быть прочитано как «три во второй степени» или «три в квадрате», оба варианта будут верными.
Значение степенных выражений с дробным основанием и натуральным показателем находится по той же схеме. В то же время, в соответствии с правилом умножения дробей, операция возведения дроби в степень может быть разбита на два действия, когда числитель и знаменатель возводятся в соответствующую показателю степень по отдельности.
Операция возведения в натуральную степень имеет определенные особенности при работе с отрицательными числами. Рассмотрим следующий пример:
Пример 3
Найдем значения степенных выражений (-5)3 и (-5)4. Для этого, согласно базовому определению, необходимо умножить основание само на себя 3 и 4 раза соответственно:
(-5)3 = (-5) × (-5) × (-5) = -125
(-5)4 =(-5) × (-5) × (-5) × (-5) = 625
Из приведенного примера можно видеть, что в первом случае полученный результат является отрицательным числом, а во втором – положительным. Это связано с правилом перемножения отрицательных чисел. Следствием из него является то, что если показатель степени отрицательного числа представляет собой четное число, результат будет положительным, если нечетное – отрицательным. Таким образом, степень с отрицательным основанием и четным показателем будет равна степени с таким же показателем и основанием, равным по модулю, но противоположным по знаку.
вне зависимости от значения основания, число в степени 1 равно самому себе.
На практике возможны и более сложные случаи, когда требуется найти значение степенного выражения, в котором показатель не является натуральным числом. Ниже будут рассмотрены ситуации, когда показатель степени представляет собой целое, дробное, рациональное или иррациональное число.
Вычисление степеней с целым показателем
Все операции по возведению в целую степень можно разделить на три группы: когда показатель является целым положительным (натуральным) числом, когда он равен нулю, и когда он является отрицательным числом.
Случай с натуральным показателем был рассмотрен ранее, поэтому мы не будем к нему возвращаться.
В случае, когда показатель равен нулю, для любого не равного нулю основания значение степени будет равно единице. Если же и основание, и показатель степени равны нулю значение выражения будет не определено.
{1 / 2}}=\frac{1}{\sqrt{49}}=\frac{1}{7}\]
Также необходимо рассмотреть случай, когда основанием степени является ноль, а показателем – дробное число. Как и в случае с целыми показателями, подобные выражения имеют смысл лишь в том случае, когда показатель больше нуля. В противном случае выражение будет не определено.
Нет времени решать самому?
Наши эксперты помогут!
Контрольная
| от 300 ₽ |
Реферат
| от 500 ₽ |
Курсовая
| от 1 000 ₽ |
Нахождение степеней с иррациональным показателем
Иногда возникает необходимость нахождения значения степени, показатель которой представляет собой иррациональное число. Проблема заключается в том, что найти точное значение подобного выражения невозможно. Однако для решения любой практической задачи, как правило, достаточно нахождения значения степенного выражения с определенной степенью точности. В этом случае иррациональный показатель округляется до требуемого десятичного знака, после чего вычисление осуществляется согласно правилам, принятым для дробного показателя.
Можно видеть, что полученные значения различаются во втором знаке после запятой, при этом второе значение является более точным.
В большинстве случаев вычисление степеней с иррациональными показателями является сложной задачей, для решения которой используется вычислительная техника.
) :: (Дробное a, Интеграл b) => a -> b -> a — обычно для чисел с плавающей запятой (**) :: Плавающая a => a -> a -> aОтвет
Причина в том, что не существует реализации функции степени, которая могла бы охватывать все экзотические варианты базиса и экспоненты, будучи одновременно эффективной и точной.
Подробнее см. в этом вопросе StackOverflow.
Причины вывода типа
В математической нотации человек-читатель достаточно умен, чтобы сказать, какое определение степенной функции применимо в данном контексте. В Haskell это сильно усложнило бы вывод типов. В некоторых других языках, таких как C++, для решения этой проблемы используется перегрузка операторов, но этот подход не работает для классов числовых типов Haskell.
Математические причины
Если принять самые общие типы как для основания, так и для показателя степени, а именно, комплексные числа, результат степени уже не будет уникальным. В частности, все возможные решения, скажем, 1 x , где x иррационально, плотно в комплексном единичном круге.
Но даже для действительных чисел есть проблемы: чтобы вычислить (-1)**(1/3::Double) силовая реализация должна решить, , а действительного 10 15 -го корня из −1 не существует. К счастью, реализация Haskell не пытается быть слишком умной. Но это происходит в другом месте:
Прелюдия> (-1)**2 :: Двойной 1,0 Прелюдия> (-1)**(2 + 1e-15 - 1e-15) :: Двойной NaN
Хотя оба выражения должны оцениваться как 1.0 , надежная проверка целых чисел невозможна с числами с плавающей запятой.
Степенная функция в Numeric Prelude
Набор степенных функций можно дополнительно уточнить, как это делается в Numeric Prelude.
В этой библиотеке чем более общий базис, тем менее общий показатель степени, и наоборот:
9?)
- примеры колец: многочлены, матрицы, классы вычетов
- примеров для полей: Дроби многочленов (рациональные функции), Классы вычетов по неприводимым делителям, на самом деле нам не нужны поля, нам нужны только деление и ассоциативность, поэтому обратимые Матрицы в порядке 9/) новый.
См. также
- Haskell-Cafe: Предложение по реструктуризации классов чисел
Краткое введение в функцию мощности Numpy
В этом руководстве объясняется, как использовать функцию мощности NumPy, которая также называется np.power.
Содержание :
- Обзор NumPy
- Введение в numpy.power
- Синтаксис numpy.power
- Примеры использования NumPy power
- Часто задаваемые вопросы о Power0008
Вы можете щелкнуть любую из приведенных выше ссылок, чтобы перейти к соответствующей части руководства.

Итак, если вы просто ищете быстрый ответ на вопрос о функции np.power, просто нажмите на ссылку!
Сказав это, если вы новичок в NumPy, я рекомендую вам прочитать весь учебник. NumPy может быть немного сложным для начинающих, и это руководство предназначено для того, чтобы дать вам хороший обзор всего, что вам нужно знать, чтобы использовать функцию мощности np.
Хорошо …. давайте углубимся.
Краткий обзор NumPy
Очень быстро, давайте рассмотрим NumPy.
Если вы новичок в науке о данных в Python, вы можете немного запутаться в том, что такое NumPy.
Это довольно просто. NumPy — это набор инструментов для работы с массивами чисел в Python.
Python (надеюсь, вы знаете) — очень распространенный язык программирования. И все чаще Python становится одним из самых важных языков программирования для работы с данными.
Python отлично подходит для обработки данных
Одна из причин популярности Python в сообществе специалистов по обработке данных заключается в том, что он имеет набор модулей, которые отлично подходят для решения задач обработки данных:
- Pandas позволяет вам манипулировать кадрами данных
- Matplotlib предоставляет вам инструменты для работы с данными
- NumPy позволяет вам работать с числовыми данными
По сути, Python предоставляет вам набор инструментов для выполнения почти каждой части рабочего процесса обработки данных.

NumPy — это набор инструментов для работы с числовыми данными
Как я уже упоминал, NumPy фокусируется на работе с числами.
В частности, NumPy имеет инструменты, которые позволяют:
- вычислять медиану массива NumPy
- вычислять среднее значение массива NumPy
- суммировать значения массива NumPy
- объединять два отдельных массива NumPy
8 случайная выборка из массива NumPy
… и многое другое.
В пакете NumPy есть несколько десятков функций… перечислить их все немного сложно.
По сути, NumPy предоставляет набор инструментов для анализа, изменения формы и работы с массивами NumPy, которые представляют собой массивы числовых данных в Python.
Таким образом, NumPy имеет инструменты, позволяющие выполнять различные математические вычисления над числами и массивами чисел.
Одним из таких инструментов является функция мощности NumPy.
Краткое введение в функцию мощности NumPy
Так что же такое функция мощности NumPy?
Это довольно просто.
9n = \underbrace{b \times \cdots \times b}_{n \text{ times}}\]
Делая это, мы говорим, что возводим b в степень n.Функция np.power позволяет это сделать.
Но помимо того, что вы можете сделать это с одиночными числами, вы также можете сделать это с массивами чисел .
Как это работает на практике, может быть немного сложно, но, по сути, NumPy представляет собой всего лишь инструмент для выполнения математического возведения в степень с массивами чисел.
np.power вычисляет экспоненты в NumPy
Таким образом, хотя функция numpy.power позволяет выполнять простое возведение в степень, например, b до степени n, она также позволяет делать это с большими массивами NumPy.
Я хочу показать вам несколько примеров того, как это работает (для развития вашей интуиции), но прежде чем я это сделаю, я хочу объяснить синтаксис.
Как только вы поймете синтаксис, сами примеры станут намного легче понять.
Синтаксис numpy power
Давайте просто взглянем на синтаксис на высоком уровне.

Синтаксис на самом деле очень прост, но чтобы действительно «понять», вы должны точно понимать, что такое параметры.
Параметры np.power
На изображении синтаксиса выше есть два параметра:
-
массив-баз -
массив-экспонент функция np.power, они называютсяx1иx2.Но, как это часто бывает с официальной документацией NumPy, я думаю, что эти имена неинтуитивны. В этом случае я имею в виду
x1иx2какмассив-основимассив-экспонентсоответственно.array-of-bases(обязательно)Первый параметр функции np.power —
array-of-bases.Из этого следует, что аргумент этого параметра должен быть массивом чисел. Эти числа будут использоваться в качестве «основ» наших показателей степени.
Обратите внимание, что это обязательно. Вы должны предоставить ввод здесь.

Кроме того, поставляемый вами предмет может принимать различные формы. Вы можете предоставить массив NumPy, но вы также можете предоставить ввод, подобный массиву. Здесь будут работать подобные массиву входные данные, такие как список Python, кортеж Python или один из других объектов Python, обладающих свойствами, подобными массиву.
Имейте в виду, что вы также можете указать одно целое число!
массив показателей(обязательно)Второй параметр —
array-of-exponents, который позволяет вам указать показатели степени, которые вы будете применять к основаниям,array-of-bases.Обратите внимание, что так же, как ввод
массива экспонентов, этот ввод должен быть массивом NumPy или подобным массиву объектом. Итак, здесь вы можете предоставить массив NumPy, список Python, кортеж или другой объект Python со свойствами, подобными массиву. Вы даже можете указать одно целое число!Примечание: оба аргумента являются позиционными аргументами
Обратите внимание, что оба аргумента,
массив основанийимассив экспонентов, являются позиционными аргументами.
Позиционные аргументы немного сбивают с толку новичков, но вот краткое объяснение.
То, как используется каждый вход в np.power, зависит от того, где вы поместите его внутри
np.power().Внутри
np.power()вы должны сначала поставить основания, а затем - показатели степени. позиция аргумента внутриnp.power()определяет, как он используется функцией.Обратите внимание, что это отличается от так называемых «аргументов ключевых слов». С аргументами ключевого слова вы используете конкретное ключевое слово для обозначения входа в функцию. И пока вы используете правильные ключевые слова, они могут располагаться в любом порядке.
Таким образом, если аргумент является «позиционным аргументом», порядок имеет значение.
И потому что
массив-основанийимассив-степенейявляются позиционными аргументами, основания должны быть указаны первыми, а показатели степени должны быть указаны вторыми внутри функции.
Опять же, это немного сбивает с толку, поэтому следите за будущим руководством по позиционным аргументам.
Примеры использования мощности NumPy
Хорошо. Теперь, когда вы немного узнали о синтаксисе, давайте посмотрим на несколько реальных примеров использования numpy.power.
Мы будем работать с несколькими примерами, начиная с самых простых, а затем переходя к более сложным.
Примеры :
- Возведение целого числа в степень
- Вычислить показатель степени массива
- Использовать два массива 1-d в numpy.power
- Пример запуска этого кода сначала
08
8 88
Прежде чем вы повеселитесь с кодом в следующих примерах, вам нужно сначала запустить небольшой фрагмент кода.
Вам необходимо импортировать NumPy и дать ему «псевдоним».
импортировать numpy как np
Когда мы это делаем, мы по существу обозначаем код
npкак «псевдоним» или псевдоним модуляnumpy.
Это очень распространенное соглашение в Python, и оно позволяет вам вызывать функцию, начинающуюся с
np. Вы увидите, что я имею в виду через минуту.Пример 1. Возведение целого числа в степень с помощью np.power
Сначала мы будем работать с очень простым примером
.Здесь мы просто возводим целое число в степень.
Для этого вызовем функцию мощности NumPy с кодом
np.power(). Затем внутри скобок мы укажем два аргумента …. основание и показатель.нп.сила(2,3)
ВЫХОД:
8
Это очень просто. Он просто вычисляет 2 в 3-й степени, что равно 8.
Обратите внимание, как работают входные данные. Первый вход (2) — это основание, а второй вход (3) — показатель степени.
Именно так будут работать остальные примеры.
Давайте рассмотрим более сложный пример.
Пример 2. Вычисление показателей массива чисел
Здесь мы немного изменим ситуацию.

Вместо одного целого числа основанием будет группа чисел, организованная в объект, подобный массиву (т. е. список Python).
Чтобы было ясно, мы обычно используем np.power для массивов NumPy
. Однако я думаю, что все будет проще понять, если вместо этого мы просто используем список Python. Используя список Python, вы действительно сможете увидеть все числа внутри синтаксиса.В этом примере основаниями будет простой список чисел от 0 до 4:
[0,1,2,3,4].Этот список будет первым входом в функцию np.power. Мы собираемся возвести каждый элемент этого списка во вторую степень.
np.power([0,1,2,3,4], 2)
Что дает следующий вывод:
array([ 0, 1, 4, 9, 16])
Это довольно просто, если вы понимаете, что здесь происходит.
По сути, функция np.power берет элементы списка и использует их в качестве оснований . Затем он применяет показатель степени (второй аргумент функции) к каждому основанию.

Итак, np.power просто применяет показатель степени 2 к каждому основанию в первом входном массиве.
И результатом функции является новый NumPy с вычисленными экспоненциальными значениями.
Повторите пример с массивом numpy
Теперь давайте просто повторим этот пример с массивом NumPy вместо списка Python.
Как я упоминал выше… все легче понять и увидеть, когда мы используем список Python, но нам часто нужно использовать функцию np.power для реальных массивов NumPy.
Итак, я просто покажу вам тот же пример с массивом NumPy вместо списка Python.
Во-первых, мы просто создадим массив NumPy, используя np.arange:
array_1d = np.arange(5)
Этот массив содержит только числа от 0 до 4.
Затем мы будем использовать np.power для вычисления показателя степени:
np.power(array_1d, 2)
Что дает следующий вывод:
array([ 0, 1, 4, 9, 16])
Что касается выходных данных, этот пример создает те же выходные данные, что и
np.. Так что просто помните, что мощность NumPy будет работать с массивами NumPy, списками Python или любыми объектами, подобными массивам.
power([0,1,2,3,4], 2) Хорошо. Теперь, когда мы рассмотрели несколько простых примеров, давайте перейдем к чему-то более сложному.
Пример 3. Использование np.power с двумя массивами
Здесь мы собираемся использовать два входных массива вместо одного массива и одного числа.
Но имейте в виду, мы собираемся использовать списки Python вместо обычных массивов NumPy, просто для ясности.
Первый список будет списком оснований, а второй список будет списком степеней.
np.power([2,2,2,2,2], [0,1,2,3,4])
Что дает следующий результат:
array([ 1, 2, 4, 8, 16])
Так что же здесь произошло?
Первый входной список —
[2,2,2,2,2]— это список баз .Второй входной список —
[0,1,2,3,4] — это список из показателей .
Вспомните предыдущие примеры.
В таком примере, как
np.power(2,3), первый аргумент — это основание, а второй — показатель степени.Код
np.power([2,2,2,2,2], [0,1,2,3,4])по сути такой же! Первый список - это основания, а второй список - это показатели степени.Единственная существенная разница заключается в том, как эти входные данные объединяются для получения выходных данных.
NumPy применяет показатели к основаниям поэлементно . Это означает, что он применяет первый показатель к первому основанию, второй показатель ко второму основанию и так далее.
Учитывая, что наши входные списки довольно просты, это все еще довольно простой пример. Но это показывает вам, насколько мощной (хе-хе) является функция np.power, когда вы начинаете работать с массивами и объектами, подобными массивам.
Хорошо. Теперь давайте перейдем к более сложному примеру, где у нас есть многомерный массив оснований.

Пример 4. Вычисление показателей с многомерными массивами (трансляция)
Здесь мы собираемся использовать степенную функцию NumPy для вычисления показателей для двумерного массива оснований.
Кроме того, показателей степени также будут иметь структуру, подобную массиву.
Давайте посмотрим на пример, а затем я объясню, как именно NumPy справляется с этим.
Сначала создадим входной массив. На самом деле это будет массив NumPy, а не список Python.
Чтобы создать этот массив, мы просто воспользуемся функцией np.array.
array_2d = np.array([[0,0,0,0,0],[1,1,1,1,1],[2,2,2,2,2],[3,3, 3,3,3]])
Распечатаем, чтобы было видно:
print(array_2d)
ВЫХОД:
[[0 0 0 0 0] [1 1 1 1 1] [2 2 2 2 2] [3 3 3 3 3]]
Это довольно простой двумерный массив NumPy. Как видите, в первой строке все нули, во второй — все 1 и так далее.
Теперь давайте запустим для этого функцию np.
power и применим некоторые показатели к этим основаниям.np.power (array_2d, [0,1,2,3,4])
В результате получается следующий вывод:
array([[ 1, 0, 0, 0, 0], [ 1, 1, 1, 1, 1], [1, 2, 4, 8, 16], [ 1, 3, 9, 27, 81]])Что здесь произошло?
Вы должны подумать о структуре входных данных.
Первый аргумент — массив оснований — это двумерный массив. Второй аргумент — показатели степени — представляет собой одномерный массив. И обратите внимание, что они оба имеют одинаковое количество столбцов.
В таком случае, функция питания NumPy довольно умна. Он применяет показатели степени к в каждой строке .
Он по-прежнему делает это поэлементно, то есть показатель степени столбца 0 применяется к основанию столбца 0 …. показатель степени столбца 1 применяется к основанию столбца 1 и так далее.
Но, по сути, он применяет показатели степени к каждой строке.
Такое поведение называется широковещательной передачей , и оно довольно часто проявляется в NumPy, когда вы работаете с массивами разных размеров.
Полное объяснение вещания выходит за рамки этого поста. Просто поймите, что это распространено в NumPy, и вам, вероятно, нужно понять, как это работает.Часто задаваемые вопросы по NumPy power
Прежде чем я закончу руководство, давайте быстро обсудим часто задаваемые вопросы.
Часто задаваемые вопросы :
- Могу ли я использовать отрицательную экспоненту с мощностью NumPy?
Могу ли я использовать отрицательную экспоненту с силой NumPy?
Нет, мощность NumPy не работает с отрицательными показателями.
Так, например, если вы попытаетесь, вы получите ошибку:
np.power(2, -1)
ValueError: Целые числа в отрицательных целых степенях не допускаются.
Если вы хотите использовать отрицательные показатели степени, используйте вместо этого
numpy.float_power().Оставьте свои другие вопросы в комментариях ниже
У вас есть другие вопросы о функции питания NumPy?
Оставьте свой вопрос в комментариях ниже.

Узнайте больше о NumPy
NumPy чрезвычайно мощен и очень важен для обработки данных в Python.
В таком случае, если вы интересуетесь наукой о данных в Python, вам следует больше узнать о Python.
Вы можете узнать больше, ознакомившись с другими нашими руководствами:
- Как использовать функцию NumPy max
- Объяснение осей Numpy
- Краткое введение в массив NumPy
- Как использовать изменение формы Numpy
- Функция нулей NumPy
… и многое другое.
Я также предлагаю вам ознакомиться с нашими руководствами о matplotlib и Pandas. Например, у нас есть учебные пособия о фрейме данных Pandas, методе iloc Pandas и многом другом.
Чтобы получить БЕСПЛАТНЫЕ учебные пособия по науке о данных Python, подпишитесь на нашу рассылку
В конечном счете, если вы заинтересованы в науке о данных в Python, вам есть чему поучиться.
Хорошей новостью является то, что мы предоставляем БЕСПЛАТНЫЕ учебные пособия по науке о данных здесь, в Sharp Sight.




9n = \underbrace{b \times \cdots \times b}_{n \text{ times}}\] 






power([0,1,2,3,4], 2) 

power и применим некоторые показатели к этим основаниям.
Полное объяснение вещания выходит за рамки этого поста. Просто поймите, что это распространено в NumPy, и вам, вероятно, нужно понять, как это работает.
