переполнение, обнаруженное в numpy.rate

#python #numpy

#python #numpy

Вопрос:

 import numpy as np
a = np.rate(240,100,-50,70000)
  

Я получаю следующую ошибку:

 RuntimeWarning: invalid value encountered in double_scalars
  t1 = (r 1)**n
  

в то время как вывод:

 nan
  

Если я правильно понял: r коэффициент становится слишком большим, и вся формула сохраняется. Но есть ли хотя бы способ выяснить, имеет ли результат отрицательное или положительное значение? Или есть какое-либо эмпирическое правило для установки комбинации параметров, которые вы могли бы избежать ошибки?

Ответ №1:

 np.rate(num_of_payments,month_payment,loan_amount,num_iteration_for_solutions)
condition for solution
|num_of_payments*month_payment|>loan_amount

month_payment should be negative (money change in your account)

suppose you loan 1000000$
pay 6000$
for 200 month
np.rate(200,-6000,1000000,0)
0.0018739577886206491
``
  

Комментарии:

1. Спасибо, не могли бы вы объяснить это немного подробнее? Я был бы признателен.

2. @filtertips Нет проблем. , отредактировал ответ, посмотрите, стал ли он более понятным

3. Да, ваш случай имеет смысл, мы также могли бы сделать: np.rate(200,6000, -1000000), и получили бы тот же результат. Однако, если вы попробуете мои параметры, результатом будет Nan. И я пытаюсь понять, как преодолеть Nan