金融函数

[107]:
# 等额本息,计算每月还款
debx(amount=500000,rate=0.043,period=240)
[107]:
3109.52
[108]:
# 等额本息,查看还款计划
a = debx(amount=500000,rate=0.043,period=240,return_data=True)
a['data']
[108]:
期数 每月还款 本期本金 本期利息 本期剩余
0 1 3109.52 1317.85 1791.67 498682.15
1 2 3109.52 1322.58 1786.94 497359.57
2 3 3109.52 1327.31 1782.21 496032.26
3 4 3109.52 1332.07 1777.45 494700.19
4 5 3109.52 1336.84 1772.68 493363.35
... ... ... ... ... ...
235 236 3109.52 3054.40 55.12 12328.63
236 237 3109.52 3065.34 44.18 9263.29
237 238 3109.52 3076.33 33.19 6186.96
238 239 3109.52 3087.35 22.17 3099.61
239 240 3109.52 3098.41 11.11 1.20

240 rows × 5 columns

[109]:
# 等额本金,查看还款计划
a = debj(amount=500000,rate=0.043,period=240,return_data=True)
a['data']
[109]:
期数 每月还款 本期本金 本期利息 本期剩余
0 1 3875.00 2083.33 1791.67 497916.67
1 2 3867.53 2083.33 1784.20 495833.34
2 3 3860.07 2083.33 1776.74 493750.01
3 4 3852.60 2083.33 1769.27 491666.68
4 5 3845.14 2083.33 1761.81 489583.35
... ... ... ... ... ...
235 236 2120.66 2083.33 37.33 8334.12
236 237 2113.20 2083.33 29.87 6250.79
237 238 2105.73 2083.33 22.40 4167.46
238 239 2098.27 2083.33 14.94 2084.13
239 240 2090.80 2083.33 7.47 0.80

240 rows × 5 columns

数学计算函数

[110]:
sin(1)
[110]:
0.8415
[111]:
cos(1)
[111]:
0.5403

日期计算函数

[112]:
year_start('2023-05-23')
[112]:
datetime.datetime(2023, 1, 1, 0, 0)
[113]:
year_end('2023-05-23')
[113]:
datetime.datetime(2023, 12, 31, 0, 0)
[114]:
month_start('2023-05-23')
[114]:
datetime.datetime(2023, 5, 1, 0, 0)
[115]:
month_end('2023-04-23')
[115]:
datetime.datetime(2023, 4, 30, 0, 0)
[116]:
add_months('2023-04-30',-2)
[116]:
datetime.datetime(2023, 2, 28, 0, 0)
[117]:
# 计算日期差
date_diff('2023-05-01','2023-05-16')
[117]:
15
[118]:
# 计算月份差
date_diff('2023-05-01','2023-05-16','m')
[118]:
0.5
[119]:
# 计算年份差
date_diff('2022-05-01','2023-05-02','y')
[119]:
1.0
[120]:
# 计算月份差
month_diff('2023-05-01','2023-05-16')
[120]:
0.5
[121]:
# 计算月份差, 计算时日期按照1日进行计算,例如 '2023-05-15' 按 '2023-05-01','2023-06-16' 按'2023-06-01'进行计算
month_diff('2023-05-15','2023-06-16',method='mm')
[121]:
1

正则函数

[122]:
# 正则查找函数
regexp_like('2023','[a-z]+')
[122]:
False
[123]:
# 正则替换函数
regexp_replace('2023westat2023','[0-9]+','')
[123]:
'westat'

其他统计函数

[124]:
# 获取指定值最大连续次数
get_max_continue([1,2,2,1,2,2,2,0],2)
[124]:
3
[125]:
# 获取连续大于指定值的次数,例如:检查列表中连续大于1的次数
get_over_continue([1,2,2,1,2,3,4,0],1)
[125]:
3
[126]:
# 获取大于指定值2,且相等的最大连续次数
get_over_continue([3,4,2,1,2,3,3,4,0],2,eq=True)
[126]:
2
[127]:
# nvl函数,如果变量取值为空,则赋值为另一个值
a=None
nvl(a,5)
[127]:
5