Вставка общего количества строк внизу в python

#python #pandas #dataframe #numpy

#питон #панды #фрейм данных #тупица

Вопрос:

У меня есть этот ипотечный калькулятор с фиксированным рейтингом, я хочу, чтобы он выглядел более удовлетворительно, добавив последнюю строку, в которой указана сумма кредита. Включая то, что я хочу получить общую сумму кредита, это означает

 loan   df["Principal Paid"].sum()  

Но я так и не понял, как это сделать. У меня был почти правильный код, но это удалило столбец даты.

 import pandas as pd import numpy_financial as npf from datetime import date  interest = 0.025 years = 10 payments_year = 12 mortgage = 1500000 start_date = (date(2021, 1, 1))  rng = pd.date_range(start_date, periods=years * payments_year, freq='MS') rng.name = "Payment Date" df = pd.DataFrame(index=rng, columns=['Payment', 'Principal Paid', 'Interest Paid', 'Ending Balance'], dtype='float') df.reset_index(inplace=True) df.index  = 1 df.index.name = "Period"  df["Payment"] = -1 * npf.pmt(interest/12, years*payments_year,mortgage) df["Interest Paid"] = -1 * npf.ipmt(interest/payments_year, df.index, years*payments_year,mortgage) df["Principal Paid"] = -1 * npf.ppmt(interest/payments_year, df.index, years*payments_year,mortgage) df["Ending Balance"] = 0 df.loc[1, "Ending Balance"] = mortgage - df.loc[1, "Principal Paid"] df = df.round(0)  df['Ending Balance'] = mortgage - df['Principal Paid'].cumsum() df[df['Ending Balance'] lt; 0] == 0   return df  
 interest = 0.025 years = 10 payments_year = 12  loan = input("Write the amount you want to loan n") loan = float(loan)  start_date = input("What is the starte date, put it in YYYY-MM-DD format") year, month, day = map(int, start_date.split("-")) start_date = date(year, month, day)  fixed_rate_mortgage(interest, years, payments_year, loan, start_date)  

Какие-нибудь советы?

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

1. Вы можете добавить новую строку, используя df.iloc[-1]=…, но я думаю, что вы пытаетесь использовать фрейм данных в качестве электронной таблицы Excel, и это не должно быть так. Вам лучше сохранить его в переменной.