Я использую функцию numpy для имитации функции Excel Rate для ссуд.
Функция возвращает правильный результат при работе с подмножествоммоего фрейма данных (1 миллион записей).
Однако при работе со всем фреймом данных (более 10 миллионов записей) он возвращает результаты null для всех.
Может ли это быть проблемой с памятью?Если это так, как это можно решить?Я уже пытался разделить данные на части и использовать цикл while / for для вычисления, но это не решило проблему.
Это сработало (не тогда, когда я перебрал 10 миллионов записей):
test = df2.iloc[:1000000,:]
test = test.loc[:,['LoanTerm',Instalment,'LoanAmount']]
test['True_Effective_Rate'] = ((1+np.rate(test['LoanTerm'],-test['Instalment'],test['LoanAmount'],0))**12-1)*100
Я пытаюсь заставить это работать:
df2['True_Effective_Rate'] = ((1+np.rate(df2['LoanTerm'],-df2['Instalment'],df2['LoanAmount'],0))**12-1)*100
Я вижу, подобный вопрос задавался в прошлом, когда все возвращаемые значения равны нулю, когда один из входов параметраНеправильно.
Использование numpy.rate для массива numpy неожиданно возвращает Nan
Мой фрейм данных не имеет 0 значений.Как я могу предотвратить это?