本答案对应课程为:点我自动跳转查看
本课程起止时间为:2020-03-09到2020-06-15
本篇答案更新状态:已完结

【作业】第一章:R简介 第一章作业

小提示:本节包含奇怪的同名章节内容

1、 问题:1.1 练习向量1)怎么生成向量:“金融1601甲、金融1601乙、金融1602甲、金融1602乙、金融1603甲、金融1603乙、金融1604甲、金融1604乙”2)随机产生一个包括负数和正数的向量,负数采用1-负数替代,即-3变成4,正数用1+正数替代,即2变成3,怎么编写代码?
评分规则: 【 每一小题25分1)xx7 <- paste(rep(paste("金融",1601:1604,sep="") ,each=2),c("甲","乙"),sep="")不一定要求一句代码,两句或者两句以上代码都可以,只需要运行结果对
2)1)  方法一:xx1088 <- sample(-50:50,10)xx10881 <- xx1088xx10881[xx1088 < 0 ] <- 1 – xx1088[xx1088 < 0]xx10881[xx1088 > 0 ] <- 1 + xx1088[xx1088 > 0]方法二:xx1091 <-runif(10,min=-3,max=3) ###生成xx1091向量   xx1091[xx1091 < 0] <- 1-xx1091[xx1091 < 0] ###求出xx1091中小于0的元素对应的位置,yy对应的位置用1-xx1091[xx1091 < 0]替代xx1091[xx1091 >= 0] <- 1+xx1091[xx1091 >= 0] ###求出xx1091中大于等于0的元素对应的位置,yy对应的位置用1+xx1091[xx1091 >= 0]替代 产生随机整数和随机小数都可以两种方法都可以

2、 问题:1.2 练习矩阵1)产生随机数,形成矩阵,负的1-该数,正的1加该数2)如何取矩阵上三角和下三角矩阵
评分规则: 【 根据代码完成情况给分1)x18211 <- matrix(sample(-50:50,16),nrow=4,ncol=4,byrow=T)   ###生成4行4列,以行排序元素的矩阵#方法一x18212 <- x18211x18212[x18211 <=0 ] <- 1- x18211[x18211 <=0 ]x18212[x18211 >0 ] <- 1+ x18211[x18211 >0 ]x18212#方法二,先做加,再做减x18211[x18211 > 0 ] <- 1+x18211[x18211 > 0 ]x18211[x18211 <= 0 ] <- 1-x18211[x18211 <= 0 ]x18211
###取下三角x1820 <- matrix(1:12,nrow=3,ncol=4)   #生成3行4列,以列排序元素的矩阵方法1)用upper.tri函数x1820[upper.tri(x1820)] <- 0方法2)取矩阵x1820的下三角矩阵x1820[row(x1820) < col(x1820)] <- 0     ###取矩阵x1820的下三角矩阵x1820 取上三角方法1)用lower.tri函数x1820[lower.tri(x1820)] <- 0 方法2)取矩阵x1820的下三角矩阵x1820[row(x1820) > col(x1820)] <- 0     ###取矩阵x1820的下三角矩阵x1820代码不一定要完全一致,只需要运行结果对就可以

3、 问题:1.1 练习向量
1)怎么生成向量:“金融1601甲、金融1601乙、金融1602甲、金融1602乙、金融1603甲、金融1603乙、金融1604甲、金融1604乙”
2)随机产生一个包括负数和正数的向量,负数采用1-负数替代,即-3变成4,正数用1+正数替代,即2变成3,怎么编写代码?

评分规则: 【 每一小题25分1)xx7 <- paste(rep(paste("金融",1601:1604,sep="") ,each=2),c("甲","乙"),sep="")不一定要求一句代码,两句或者两句以上代码都可以,只需要运行结果对
2)1)  方法一:xx1088 <- sample(-50:50,10)xx10881 <- xx1088xx10881[xx1088 < 0 ] <- 1 – xx1088[xx1088 < 0]xx10881[xx1088 > 0 ] <- 1 + xx1088[xx1088 > 0]方法二:xx1091 <-runif(10,min=-3,max=3) ###生成xx1091向量   xx1091[xx1091 < 0] <- 1-xx1091[xx1091 < 0] ###求出xx1091中小于0的元素对应的位置,yy对应的位置用1-xx1091[xx1091 < 0]替代xx1091[xx1091 >= 0] <- 1+xx1091[xx1091 >= 0] ###求出xx1091中大于等于0的元素对应的位置,yy对应的位置用1+xx1091[xx1091 >= 0]替代 产生随机整数和随机小数都可以两种方法都可以

4、 问题:1.2 练习矩阵
1)产生随机数,形成矩阵,负的1-该数,正的1加该数
2)如何取矩阵上三角和下三角矩阵

评分规则: 【 根据代码完成情况给分1)x18211 <- matrix(sample(-50:50,16),nrow=4,ncol=4,byrow=T)   ###生成4行4列,以行排序元素的矩阵#方法一x18212 <- x18211x18212[x18211 <=0 ] <- 1- x18211[x18211 <=0 ]x18212[x18211 >0 ] <- 1+ x18211[x18211 >0 ]x18212#方法二,先做加,再做减x18211[x18211 > 0 ] <- 1+x18211[x18211 > 0 ]x18211[x18211 <= 0 ] <- 1-x18211[x18211 <= 0 ]x18211
###取下三角x1820 <- matrix(1:12,nrow=3,ncol=4)   #生成3行4列,以列排序元素的矩阵方法1)用upper.tri函数x1820[upper.tri(x1820)] <- 0方法2)取矩阵x1820的下三角矩阵x1820[row(x1820) < col(x1820)] <- 0     ###取矩阵x1820的下三角矩阵x1820 取上三角方法1)用lower.tri函数x1820[lower.tri(x1820)] <- 0 方法2)取矩阵x1820的下三角矩阵x1820[row(x1820) > col(x1820)] <- 0     ###取矩阵x1820的下三角矩阵x1820代码不一定要完全一致,只需要运行结果对就可以

第一章:R简介 第一章测试

1、 问题:下列是“取余”操作运算符的是()。
选项:
A:%
B:%%
C:%/%
D:/
答案: 【%%

2、 问题:将数据框X中含有的NA值换成0,使用的函数是()。
选项:
A:X <-na.omit(X)
B:X[,is.na(X)] <- 0
C:X[is.na(X)] <- 0
D:is.na(X) <- 0
答案: 【X[is.na(X)] <- 0

3、 问题:使用代码 x <- 1024;length(x) 后,得到的x的长度为4。
选项:
A:正确
B:错误
答案: 【错误
分析:【x为数值型保存,长度为1。

4、 问题:利用list.files()函数可以读取当前目录下的文件夹。
选项:
A:正确
B:错误
答案: 【错误
分析:【利用list.files()函数可以读取当前目录下的文件。

5、 问题:可以把向量、矩阵、数据框、列表、数组放在一个列表里。
选项:
A:正确
B:错误
答案: 【正确

【作业】第二章:R基本操作 第二章作业

小提示:本节包含奇怪的同名章节内容

1、 问题:2.1 练习新变量生成和数据重新编码1)从WDI分别下载所有国家2016年和2017年GDP数据 2)计算经济增长(放在2017年的表里) 3)产生一个新变量level(放在2017年的表里),经济增长小于等于-5%的标I,大于-5%小于等于0的标II,大于0%小于等于5%的标为III,大于5%小于等于10%标为IV,大于10%标为V
评分规则: 【 gdp_2017 <- WDI(country = "all", indicator = "NY.GDP.MKTP.CD", start = 2017, end = 2017, extra = FALSE, cache = NULL)gdp_2016 <- WDI(country = "all", indicator = "NY.GDP.MKTP.CD", start = 2016, end = 2016, extra = FALSE, cache = NULL)gdp_2017$dgdp <- (gdp_2017$NY.GDP.MKTP.CD-gdp_2016$NY.GDP.MKTP.CD)/gdp_2016$NY.GDP.MKTP.CD*100#方法一,用within函数gdp_2017 <- within(gdp_2017,{  level <- NA  level [dgdp > 10] <- "V"  level[dgdp > 5 & dgdp <= 10 ] <- "IV"  level[dgdp > 0 & dgdp <= 5 ] <- "III"  level[dgdp > -5 & dgdp <= 0 ] <- "II"  level[dgdp <= -5 ] <- "I"})#方法二,直接赋值gdp_2017$level2 <- NAgdp_2017$level2 [gdp_2017$dgdp > 10] <- "V"gdp_2017$level2[gdp_2017$dgdp > 5 & gdp_2017$dgdp <= 10 ] <- "IV"gdp_2017$level2[gdp_2017$dgdp > 0 & gdp_2017$dgdp <= 5 ] <- "III"gdp_2017$level2[gdp_2017$dgdp > -5 & gdp_2017$dgdp <= 0 ] <- "II"gdp_2017$level2[gdp_2017$dgdp <= -5 ] <- "I" #方法三,用cut函数gdp_2017$level3 <- cut(gdp_2017$dgdp,c(min(gdp_2017$dgdp,na.rm = T),-5,0,5,10,max(gdp_2017$dgdp,na.rm = T)))levels(gdp_2017$level3 ) <- c("I","II","III","IV","V") 不要求代码完全一致,只需运行结果对就行

2、 问题:2.1 练习新变量生成和数据重新编码
1)从WDI分别下载所有国家2016年和2017年GDP数据 2)计算经济增长(放在2017年的表里) 3)产生一个新变量level(放在2017年的表里),经济增长小于等于-5%的标I,大于-5%小于等于0的标II,大于0%小于等于5%的标为III,大于5%小于等于10%标为IV,大于10%标为V
评分规则: 【 gdp_2017 <- WDI(country = "all", indicator = "NY.GDP.MKTP.CD", start = 2017, end = 2017, extra = FALSE, cache = NULL)gdp_2016 <- WDI(country = "all", indicator = "NY.GDP.MKTP.CD", start = 2016, end = 2016, extra = FALSE, cache = NULL)gdp_2017$dgdp <- (gdp_2017$NY.GDP.MKTP.CD-gdp_2016$NY.GDP.MKTP.CD)/gdp_2016$NY.GDP.MKTP.CD*100#方法一,用within函数gdp_2017 <- within(gdp_2017,{  level <- NA  level [dgdp > 10] <- "V"  level[dgdp > 5 & dgdp <= 10 ] <- "IV"  level[dgdp > 0 & dgdp <= 5 ] <- "III"  level[dgdp > -5 & dgdp <= 0 ] <- "II"  level[dgdp <= -5 ] <- "I"})#方法二,直接赋值gdp_2017$level2 <- NAgdp_2017$level2 [gdp_2017$dgdp > 10] <- "V"gdp_2017$level2[gdp_2017$dgdp > 5 & gdp_2017$dgdp <= 10 ] <- "IV"gdp_2017$level2[gdp_2017$dgdp > 0 & gdp_2017$dgdp <= 5 ] <- "III"gdp_2017$level2[gdp_2017$dgdp > -5 & gdp_2017$dgdp <= 0 ] <- "II"gdp_2017$level2[gdp_2017$dgdp <= -5 ] <- "I" #方法三,用cut函数gdp_2017$level3 <- cut(gdp_2017$dgdp,c(min(gdp_2017$dgdp,na.rm = T),-5,0,5,10,max(gdp_2017$dgdp,na.rm = T)))levels(gdp_2017$level3 ) <- c("I","II","III","IV","V") 不要求代码完全一致,只需运行结果对就行

【作业】第三章:R编程基础 第三章作业

小提示:本节包含奇怪的同名章节内容

1、 问题:3.1 小王贷款100万购买房子,贷款利率为4.9%(年利率),贷款期限20年。1)用循环执行语句(for或者while),分别计算等额本金还款和等额本息还款的每月偿还本金、偿还利息、偿还本息、剩余本金2)以数据框的形式给出。3)计算两种还款方式的利息差额。其中等额本金每月偿还本金 = 贷款总额/贷款月数等额本息每个月的偿还本息 = 贷款总额月利率(1+月利率)^贷款月数/[(1+月利率)^贷款月数-1]
评分规则: 【 #借款100万,年利率4.9%,借20年#等额本金计算Sys.setlocale(locale = "chinese")debit <- data.frame("期限"=c(1:240),"偿还本金"=NA,"偿还利息"=NA,"偿还本息"=NA,"剩余本金"=NA)for (i in 1:240){  debit$偿还本金[i] <- 1000000/240  debit$偿还利息[i] <- (1000000-1000000/240(i-1))0.049/12  debit$偿还本息[i] <- debit$偿还本金[i] + debit$偿还利息[i]  debit$剩余本金[i] <- 1000000-1000000/240i}debit.all <- sum(debit$偿还本息)debit.interest <- debit.all – 1000000不要求代码完全一致,只需要运行结果对
#等额本息计算 debit2 <- data.frame("期限"=c(0:240),"偿还本金"=NA,"偿还利息"=NA,"偿还本息"=NA,"剩余本金"=NA)debit2$剩余本金[1] <- 1000000for (i in 2:241){  debit2$偿还利息[i] <- debit2$剩余本金[i-1]
0.049/12  debit2$偿还本息[i] <- 1000000(0.049/12)((1+0.049/12)^240)/(((1+0.049/12)^240)-1)  debit2$偿还本金[i] <- debit2$偿还本息[i] – debit2$偿还利息[i]  debit2$剩余本金[i] <- debit2$剩余本金[i-1]-debit2$偿还本金[i]}debit2.all <- sum(debit2$偿还本息,na.rm=T)debit2.interest <- debit2.all – 1000000  不要求代码完全一致,只需要运行结果对

2、 问题:3.1 小王贷款100万购买房子,贷款利率为4.9%(年利率),贷款期限20年。
1)用循环执行语句(for或者while),分别计算等额本金还款和等额本息还款的每月偿还本金、偿还利息、偿还本息、剩余本金
2)以数据框的形式给出。
3)计算两种还款方式的利息差额。
其中等额本金每月偿还本金 = 贷款总额/贷款月数
等额本息每个月的偿还本息 = 贷款总额月利率(1+月利率)^贷款月数/[(1+月利率)^贷款月数-1]

评分规则: 【 #借款100万,年利率4.9%,借20年#等额本金计算Sys.setlocale(locale = "chinese")debit <- data.frame("期限"=c(1:240),"偿还本金"=NA,"偿还利息"=NA,"偿还本息"=NA,"剩余本金"=NA)for (i in 1:240){  debit$偿还本金[i] <- 1000000/240  debit$偿还利息[i] <- (1000000-1000000/240(i-1))0.049/12  debit$偿还本息[i] <- debit$偿还本金[i] + debit$偿还利息[i]  debit$剩余本金[i] <- 1000000-1000000/240i}debit.all <- sum(debit$偿还本息)debit.interest <- debit.all – 1000000不要求代码完全一致,只需要运行结果对
#等额本息计算 debit2 <- data.frame("期限"=c(0:240),"偿还本金"=NA,"偿还利息"=NA,"偿还本息"=NA,"剩余本金"=NA)debit2$剩余本金[1] <- 1000000for (i in 2:241){  debit2$偿还利息[i] <- debit2$剩余本金[i-1]
0.049/12  debit2$偿还本息[i] <- 1000000(0.049/12)((1+0.049/12)^240)/(((1+0.049/12)^240)-1)  debit2$偿还本金[i] <- debit2$偿还本息[i] – debit2$偿还利息[i]  debit2$剩余本金[i] <- debit2$剩余本金[i-1]-debit2$偿还本金[i]}debit2.all <- sum(debit2$偿还本息,na.rm=T)debit2.interest <- debit2.all – 1000000  不要求代码完全一致,只需要运行结果对

第三章:R编程基础 第三章测试

1、 问题:x<-c(TRUE,FALSE,FALSE),y<-c(TRUE,TRUE,FALSE)),运行x&&y这行代码是什么结果
选项:
A:TRUE
B:TRUE FALSE FALSE
C:both TRUE
D:FALSE
答案: 【TRUE

2、 问题: f3 <- function(a123,b12,b13){list(a=a123,b1=b12,b2=b13)} ,构建一个函数,该函数为三个向量构成的列表,函数包括三个参数。则f3(2,3,a123=1)$a的结果为
选项:
A:$a  [1] 2
B:$a  [1] 3
C:$a  [1] 1
D:$a  [1] a123
答案: 【$a  [1] 1

3、 问题:函数可以没有函数名。
选项:
A:正确
B:错误
答案: 【正确

4、 问题: 函数主体可以没有返回语句。
选项:
A:正确
B:错误
答案: 【错误

本门课程剩余章节答案为付费内容
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦

   

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注