面向金融的R语言_L3

本文介绍了R语言在金融领域的应用,重点讲解了for循环的使用,包括基础格式和示例,以及如何计算阶乘和菲波纳契数列。此外,还探讨了if()和while()语句,特别是Newton寻根迭代法,并介绍了函数的定义和作用,以及rep()和replicate()的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

for 循环

基础格式 for(name in vector) {commands}
变量 name 循环取 vector 中的每个元素,分别执行大括号中的 commands
commands 可以是一条语句,也可以是多条语句。当用一条语句时,可以不用大括号
用 for() 计算 n!

n <- 10
result <- 1
for(i in 1:n){
	result <- reslut * i
}
result

产生随机数

results <- numeric(1000)
x <- 123
for(i in 1:1000){
	x <- (65539 * x) %% (2 ^ 31)
	results[i] <- x / (2 ^ 31)
}
plot(results, xlab = "1:1000")

产生的随机数分布
如何求菲波纳契数列头 12 个

Fibonacci <- numeric(12)
Fibonacci <- Fibonacci[2] <- 1
for(i in 3:12){
	Fibonacci[i] <- Fibonacci[i - 2] + Fibonacci[i - 1]
}
Fibonacci

Example:

Q1:
在这里插入图片描述
Q: 假设一个汽车经销商推销两种购买20000美元新车的方式
1:一次付清 20000 美元,然后返还其 1000 美元
2:每月付 1000 美元,连付 20 个月
假设无套利存在,求此时市场利率是多少?
A:
19000 = 1000 ∗ ∑ n = 1 n = 20 ( 1 + i ) − n 19000 = 1000*\sum_{n=1}^{n=20}(1+i)^{-n} 19000=1000n=1n=20(1+i)n
i = 1 − ( 1 + i ) − 20 19 i = \frac{1-(1+i)^{-20}}{19} i=191(1+i)20
给定一个初始值,用迭代的方法求解 i 。

i <- 0.006
results <- numeric(1000)
for(j in 1:1000){
	i <- (1 - (1 + i)^(-20)) / 19
	print(i)
	results[j] = i
}
plot(1:1000,results)

在这里插入图片描述
Q2:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值