• 贷款计算测试


    {
     "cells": [
      {
       "cell_type": "markdown",
       "id": "7bc249d7",
       "metadata": {},
       "source": [
        "# 贷款计算\n",
        "\n",
        "x = 月收入(元)\n",
        "\n",
        "y = 月公积金(元)\n",
        "\n",
        "z = 贷款金额(元)\n",
        "\n",
        "r = 商贷年利率(0.05)\n",
        "\n",
        "s = 商贷月利率(r/12)\n",
        "\n",
        "t = 贷款期数(360期)\n",
        "\n",
        "u = 通货膨胀(1.X)\n",
        "\n",
        "v = 月通货膨胀u**(1/12)"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "17c0a05a",
       "metadata": {},
       "outputs": [],
       "source": [
        "def 等额本金(贷款金额,贷款期数,商贷年利率,第几个月):\n",
        "    每月应还本金=贷款金额/贷款期数\n",
        "    每月利息 = (贷款金额-每月应还本金*(第几个月-1))*(商贷年利率/12)\n",
        "    return (每月应还本金,每月利息)"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "c22ed801",
       "metadata": {},
       "outputs": [],
       "source": [
        "def 等额本息(贷款金额,贷款期数,商贷年利率,第几个月):\n",
        "    商贷月利率=商贷年利率/12\n",
        "    月均还款本金和利息 = 贷款金额*商贷月利率*pow((1+商贷月利率),贷款期数)/(pow((1+商贷月利率),贷款期数)-1)\n",
        "    还款利息总和=贷款期数*贷款金额*商贷月利率*pow((1+商贷月利率),贷款期数)/(pow((1+商贷月利率),贷款期数)-1)-贷款金额\n",
        "    第一个月还款利息=贷款金额*商贷月利率\n",
        "    剩余利息=还款利息总和-第一个月还款利息\n",
        "    剩余本金=贷款金额-(月均还款本金和利息-第一个月还款利息)\n",
        "    if 第几个月==1:\n",
        "        return (月均还款本金和利息-第一个月还款利息,第一个月还款利息)\n",
        "    第几个月利息 = (贷款金额*商贷月利率-月均还款本金和利息)*pow((1+商贷月利率),(第几个月-1))+月均还款本金和利息\n",
        "    第几个月本金 = 月均还款本金和利息-第几个月利息\n",
        "    return (第几个月本金,第几个月利息)"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "83ef3204",
       "metadata": {},
       "outputs": [],
       "source": [
        "def 等额本金结余(贷款时月收入,贷款时公积金,通货膨胀,贷款金额,贷款期数,商贷年利率,第几个月):\n",
        "    当月收入=贷款时月收入*(通货膨胀**(1/12))**第几个月\n",
        "    当月公积金=贷款时公积金*(通货膨胀**(1/12))**第几个月\n",
        "    (本金,利息)=等额本金(贷款金额,贷款期数,商贷年利率,第几个月)\n",
        "    当月应还=本金+利息\n",
        "    当月现金结余=当月收入\n",
        "    当月公积金结余=当月公积金\n",
        "    if 当月应还>当月公积金:\n",
        "        当月公积金结余=0\n",
        "        当月现金结余=当月收入-(当月应还-当月公积金)\n",
        "        return (当月现金结余,当月公积金结余)\n",
        "    return (当月现金结余,当月公积金-当月应还)"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "03983f02",
       "metadata": {},
       "outputs": [],
       "source": [
        "def 等额本息结余(贷款时月收入,贷款时公积金,通货膨胀,贷款金额,贷款期数,商贷年利率,第几个月):\n",
        "    当月收入=贷款时月收入*(通货膨胀**(1/12))**第几个月\n",
        "    当月公积金=贷款时公积金*(通货膨胀**(1/12))**第几个月\n",
        "    (本金,利息)=等额本息(贷款金额,贷款期数,商贷年利率,第几个月)\n",
        "    当月应还=本金+利息\n",
        "    当月现金结余=当月收入\n",
        "    当月公积金结余=当月公积金\n",
        "    if 当月应还>当月公积金:\n",
        "        当月公积金结余=0\n",
        "        当月现金结余=当月收入-(当月应还-当月公积金)\n",
        "        return (当月现金结余,当月公积金结余)\n",
        "    return (当月现金结余,当月公积金-当月应还)"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "59f14e31",
       "metadata": {},
       "outputs": [],
       "source": [
        "现金结余=0\n",
        "公积金结余=0\n",
        "for m in range(1,360):\n",
        "    (a,b)=等额本金结余(贷款时月收入,贷款时公积金,通货膨胀,贷款金额,贷款期数,商贷年利率,m)\n",
        "    现金结余+=a\n",
        "    公积金结余+=b\n",
        "print(现金结余)\n",
        "print(公积金结余)"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "f9d6b7a0",
       "metadata": {},
       "outputs": [],
       "source": [
        "现金结余=0\n",
        "公积金结余=0\n",
        "for m in range(1,360):\n",
        "    (a,b)=等额本息结余(贷款时月收入,贷款时公积金,通货膨胀,贷款金额,贷款期数,商贷年利率,m)\n",
        "    现金结余+=a\n",
        "    公积金结余+=b\n",
        "print(现金结余)\n",
        "print(公积金结余)"
       ]
      },
      {
       "cell_type": "markdown",
       "id": "24cd47b7",
       "metadata": {},
       "source": [
        "# 车贷转等额本金房贷利率计算"
       ]
      },
      {
       "cell_type": "markdown",
       "id": "c4ca0567",
       "metadata": {},
       "source": [
        "# 车贷利息=车贷*年利率*年数"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "7785d5c1",
       "metadata": {},
       "outputs": [],
       "source": [
        "def 车贷转等额本金房贷利率换算(车贷金额,年利率,贷款年期限):\n",
        "    每月应还本金=车贷金额/(贷款年期限*12)\n",
        "    商贷年利率 = symbols('商贷年利率')\n",
        "    车贷利息 = 车贷金额*年利率*贷款年期限\n",
        "    总利息=0\n",
        "    for 第几个月 in range(1,贷款年期限*12):\n",
        "        每月利息 = (车贷金额-每月应还本金*(第几个月-1))*(商贷年利率/12)\n",
        "        总利息+=每月利息\n",
        "    y=solve(总利息-车贷利息,商贷年利率)\n",
        "    return y"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "690343d5",
       "metadata": {},
       "outputs": [],
       "source": [
        "# def 车贷转等额本息房贷利率换算(车贷金额,年利率,贷款年期限):\n",
        "#     商贷年利率 = symbols('商贷年利率')\n",
        "#     商贷月利率=商贷年利率/12\n",
        "#     贷款期数=贷款年期限*12\n",
        "#     还款利息总和=贷款期数*车贷金额*商贷月利率*pow((1+商贷月利率),贷款期数)/(pow((1+商贷月利率),贷款期数)-1)-车贷金额\n",
        "#     车贷利息 = 车贷金额*年利率*贷款年期限\n",
        "#     y=solve(还款利息总和-车贷利息,商贷年利率)\n",
        "#     return y\n",
        "def 车贷转等额本息房贷利率换算(车贷金额,年利率,贷款年期限):\n",
        "    商贷年利率 = symbols('商贷年利率')\n",
        "    商贷月利率=商贷年利率/12\n",
        "    贷款期数=贷款年期限*12\n",
        "    还款利息总和=车贷金额*商贷月利率*(贷款期数+1)/2\n",
        "    车贷利息 = 车贷金额*年利率*贷款年期限\n",
        "    y=solve(还款利息总和-车贷利息,商贷年利率)\n",
        "    return y"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "06732079",
       "metadata": {},
       "outputs": [],
       "source": [
        "车贷转等额本金房贷利率换算(150000,0.03,5)"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": null,
       "id": "858a9b72",
       "metadata": {},
       "outputs": [],
       "source": [
        "车贷转等额本息房贷利率换算(150000,0.03,5)"
       ]
      },
      {
       "cell_type": "markdown",
       "id": "9d84be77",
       "metadata": {},
       "source": [
        "# Sympy 用法"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": 41,
       "id": "d9e7c6f1",
       "metadata": {},
       "outputs": [],
       "source": [
        "from sympy import *"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": 42,
       "id": "ce6e43a3",
       "metadata": {},
       "outputs": [],
       "source": [
        "x=symbols('x')\n",
        "a=symbols('a')\n",
        "b=symbols('b')\n",
        "c=symbols('c')\n",
        "y=a*x**2+b*x+c\n",
        "z=solve(y,x)"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": 43,
       "id": "5e917926",
       "metadata": {},
       "outputs": [
        {
         "name": "stdout",
         "output_type": "stream",
         "text": [
          "\\left[ \\frac{- b - \\sqrt{- 4 a c + b^{2}}}{2 a}, \\  \\frac{- b + \\sqrt{- 4 a c + b^{2}}}{2 a}\\right]\n"
         ]
        }
       ],
       "source": [
        "print(latex(z))"
       ]
      },
      {
       "cell_type": "markdown",
       "id": "d113224f",
       "metadata": {},
       "source": [
        "$\\left[ \\frac{- b - \\sqrt{- 4 a c + b^{2}}}{2 a}, \\  \\frac{- b + \\sqrt{- 4 a c + b^{2}}}{2 a}\\right]$"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": 44,
       "id": "2781c36a",
       "metadata": {},
       "outputs": [
        {
         "data": {
          "text/latex": [
           "$\\left[ \\frac{- b - \\sqrt{- 4 a c + b^{2}}}{2 a}, \\  \\frac{- b + \\sqrt{- 4 a c + b^{2}}}{2 a}\\right]$"
          ],
          "text/plain": [
           "<IPython.core.display.Latex object>"
          ]
         },
         "execution_count": 44,
         "metadata": {},
         "output_type": "execute_result"
        }
       ],
       "source": [
        "from IPython.display import Latex\n",
        "Latex('$'+latex(z)+'$')"
       ]
      },
      {
       "cell_type": "code",
       "execution_count": 45,
       "id": "c873294c",
       "metadata": {},
       "outputs": [
        {
         "data": {
          "text/latex": [
           "$\\displaystyle -1.0$"
          ],
          "text/plain": [
           "-1.00000000000000"
          ]
         },
         "execution_count": 45,
         "metadata": {},
         "output_type": "execute_result"
        }
       ],
       "source": [
        "z[0].evalf(subs={a:1,b:2,c:1})"
       ]
      }
     ],
     "metadata": {
      "kernelspec": {
       "display_name": "Python 3 (ipykernel)",
       "language": "python",
       "name": "python3"
      },
      "language_info": {
       "codemirror_mode": {
        "name": "ipython",
        "version": 3
       },
       "file_extension": ".py",
       "mimetype": "text/x-python",
       "name": "python",
       "nbconvert_exporter": "python",
       "pygments_lexer": "ipython3",
       "version": "3.9.7"
      },
      "latex_envs": {
       "LaTeX_envs_menu_present": true,
       "autoclose": false,
       "autocomplete": true,
       "bibliofile": "biblio.bib",
       "cite_by": "apalike",
       "current_citInitial": 1,
       "eqLabelWithNumbers": true,
       "eqNumInitial": 1,
       "hotkeys": {
        "equation": "Ctrl-E",
        "itemize": "Ctrl-I"
       },
       "labels_anchors": false,
       "latex_user_defs": false,
       "report_style_numbering": false,
       "user_envs_cfg": false
      },
      "toc": {
       "base_numbering": 1,
       "nav_menu": {},
       "number_sections": true,
       "sideBar": true,
       "skip_h1_title": false,
       "title_cell": "Table of Contents",
       "title_sidebar": "Contents",
       "toc_cell": false,
       "toc_position": {},
       "toc_section_display": true,
       "toc_window_display": false
      }
     },
     "nbformat": 4,
     "nbformat_minor": 5
    }
    
     
    
  • 相关阅读:
    马氏距离的深入理解
    Mahalanobis Distance(马氏距离)
    Weka EM 协方差
    数据挖掘、概率分析与决策支持
    二、 Android中gravity与layout_gravity的区别
    一、 Android完全退出应用程序
    python configparse
    时间戳与时间互转
    python argparse
    时间插件
  • 原文地址:https://www.cnblogs.com/yzpopulation/p/16076565.html
Copyright © 2020-2023  润新知