统计学习导论:基于R应用——第五章习题
第五章习题
1.
我们主要用到下面三个公式:
根据上述公式,我们将式子化简为
对求导即可得到得到公式5-6。
2.
(a)
1 - 1/n
(b)
自助法是有有放回的,所以第二个的概率还是1 - 1/n
(c)
由于自助法是有放回的,且每次抽样都是独立事件,所以概率是(1 - 1/n)^n
(d)
答案是1-(1-1/5)^5 = 67.2%
(e)
63.4%
(f)
63.2%
(g)
pr = function(n) return(1 - (1 - 1/n)^n)
x = 1:1e+05
plot(x, pr(x))
3题和4题略
5.
(a)
library(ISLR)
summary(Default) attach(Default) set.seed(1)
glm.fit = glm(default ~ income + balance, data = Default, family = binomial)
(b)
train = sample(dim(Default)[1], dim(Default)[1]/2)
glm.fit = glm(default ~ income + balance, data = Default, family = binomial, subset = train)
glm.pred = rep("No", dim(Default)[1]/2)
glm.probs = predict(glm.fit, Default[-train, ], type = "response")
glm.pred[glm.probs > 0.5] = "Yes"
mean(glm.pred != Default[-train, ]$default)
(c)
把(b)跑三遍。。。
(d)
上面代码在拟合逻辑回归的时候加个变量即可
6.
(a)
library(ISLR)
summary(Default)
attach(Default) set.seed(1)
glm.fit = glm(default ~ income + balance, data = Default, family = binomial)
summary(glm.fit)
(b)
boot.fn = function(data, index) return(coef(glm(default ~ income + balance, data = data, family = binomial, subset = index)))
(c)
library(boot)
boot(Default, boot.fn, 50)
7.
(a)
library(ISLR)
summary(Weekly)
set.seed(1)
attach(Weekly) glm.fit = glm(Direction ~ Lag1 + Lag2, data = Weekly, family = binomial)
summary(glm.fit)
(b)
glm.fit = glm(Direction ~ Lag1 + Lag2, data = Weekly[-1, ], family = binomial)
summary(glm.fit)
(c)
predict.glm(glm.fit, Weekly[1, ], type = "response") > 0.5
(d)
count = rep(0, dim(Weekly)[1])
for (i in 1:(dim(Weekly)[1])) {
glm.fit = glm(Direction ~ Lag1 + Lag2, data = Weekly[-i, ], family = binomial)
is_up = predict.glm(glm.fit, Weekly[i, ], type = "response") > 0.5
is_true_up = Weekly[i, ]$Direction == "Up"
if (is_up != is_true_up)
count[i] = 1
}
sum(count)
(e)
mean(count)
8.
(a)
n为100,p为2
(b)
set.seed(1)
y = rnorm(100)
x = rnorm(100)
y = x - 2 * x^2 + rnorm(100)
plot(x, y)
(c)
library(boot)
Data = data.frame(x, y)
set.seed(1) glm.fit = glm(y ~ x)
cv.glm(Data, glm.fit)$delta glm.fit = glm(y ~ poly(x, 2))
cv.glm(Data, glm.fit)$delta glm.fit = glm(y ~ poly(x, 3))
cv.glm(Data, glm.fit)$delta glm.fit = glm(y ~ poly(x, 4))
cv.glm(Data, glm.fit)$delta
(d)
set.seed(10)
glm.fit = glm(y ~ x)
cv.glm(Data, glm.fit)$delta glm.fit = glm(y ~ poly(x, 2))
cv.glm(Data, glm.fit)$delta glm.fit = glm(y ~ poly(x, 3))
cv.glm(Data, glm.fit)$delta glm.fit = glm(y ~ poly(x, 4))
cv.glm(Data, glm.fit)$delta
结果一样。。。
(e)
二次的最小
9.
(a)
library(MASS)
summary(Boston) set.seed(1)
attach(Boston) medv.mean = mean(medv)
medv.mean
(b)
medv.err = sd(medv)/sqrt(length(medv))
medv.err
(c)
boot.fn = function(data, index) return(mean(data[index]))
library(boot)
bstrap = boot(medv, boot.fn, 1000)
bstrap
(d)
t.test(medv)
c(bstrap$t0 - 2 * 0.4119, bstrap$t0 + 2 * 0.4119)
(e)
medv.med = median(medv)
medv.med
(f)
boot.fn = function(data, index) return(median(data[index]))
boot(medv, boot.fn, 1000)
(g)
medv.tenth = quantile(medv, c(0.1))
medv.tenth
(h)
boot.fn = function(data, index) return(quantile(data[index], c(0.1)))
boot(medv, boot.fn, 1000)
统计学习导论:基于R应用——第五章习题的更多相关文章
- 统计学习导论:基于R应用——第三章习题
第三章习题 部分证明题未给出答案 1. 表3.4中,零假设是指三种形式的广告对TV的销量没什么影响.而电视广告和收音机广告的P值小说明,原假设是错的,也就是电视广告和收音机广告均对TV的销量有影响:报 ...
- 统计学习导论:基于R应用——第四章习题
第四章习题,部分题目未给出答案 1. 这个题比较简单,有高中生推导水平的应该不难. 2~3证明题,略 4. (a) 这个问题问我略困惑,答案怎么直接写出来了,难道不是10%么 (b) 这个答案是(0. ...
- 统计学习导论:基于R应用——第二章习题
目前在看统计学习导论:基于R应用,觉得这本书非常适合入门,打算把课后习题全部做一遍,记录在此博客中. 第二章习题 1. (a) 当样本量n非常大,预测变量数p很小时,这样容易欠拟合,所以一个光滑度更高 ...
- 《学习Opencv》第五章 习题6
这是第五章 习题5.6的结合版,其中实现了摄像头抓拍功能,能够成功运行. #include "stdafx.h" #include "cv.h" #includ ...
- 《零成本实现Web自动化测试--基于Selenium》 第五章 Selenium-RC
一. 简介 Selenium-RC可以适应更复杂的自动化测试需求,而不仅仅是简单的浏览器操作和线性执行.Selenium-RC能够充分利用编程语言来构建更复杂的自动化测试案例,例如读写文件.查询数据库 ...
- 《Python 学习手册4th》 第十五章 文档
''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容 (每天看42页内容,可以保证月底看完此书) “重点 ...
- The Definitive Guide To Django 2 学习笔记(九) 第五章 模型 (一)数据库访问
以MySql数据库为例,先到http://dev.mysql.com/downloads/connector/python/处下载MysqlConnector for python的连接器. from ...
- C和指针 第十五章 习题
15.8 十六进制倾印码 #include <stdio.h> #include <stdlib.h> #include <string.h> #include & ...
- [家里蹲大学数学杂志]第269期韩青编《A Basic Course in Partial Differential Equations》 前五章习题解答
1.Introduction 2.First-order Differential Equations Exercise2.1. Find solutons of the following inti ...
随机推荐
- 用eval 动态编译代码
eval 有另外一种用法, 其参数是作为一个字串表达式, 而不是代码块.在运行时, 它将字串临时编译成代码并且执行. 这很易用, 但也很危险, 因为有可能会把具有危害性的代码放到字串里. foreac ...
- iframe中在父窗口打开子页面
我们在做页面框架的时候,通常会采用一个iframe来显示子页面,但有这么种情况,就是session失效时,登录页面就会显示在iframe中,这不符合常理,一般应该显示在顶部才对. 下面的js代码可以解 ...
- HTML5中的Range对象的研究(转载)
一:Range对象的概念 Range对象代表页面上的一段连续区域,通过Range对象,可以获取或修改页面上的任何区域,可以通过如下创建一个空的Range对象,如下: var range = docu ...
- 拓扑排序-DFS
拓扑排序的DFS算法 输入:一个有向图 输出:顶点的拓扑序列 具体流程: (1) 调用DFS算法计算每一个顶点v的遍历完成时间f[v] (2) 当一个顶点完成遍历时,将该顶点放到一个链表的最前面 (3 ...
- 使用PHP预定义变量得到url地址及相关参数
获取url地址栏参数多种方法:$_SERVER["SERVER_PORT"]//获取端口$_SERVER['HTTP_HOST']//获取域名或主机地址 如www.sina.com ...
- JS和jQuery获取节点的兄弟,父级,子级元素
原文转自http://blog.csdn.net/duanshuyong/article/details/7562423 先说一下JS的获取方法,其要比JQUERY的方法麻烦很多,后面以JQUERY的 ...
- Django Admin 简单部署上线
前言 打算为公司弄一个管理公用密码的平台,由于比较懒,就选择使用Django admin,默认的admin并不漂亮,于是我使用了这个django-suit插件来美化 如图: 是不是比原来的漂亮多了. ...
- iOS9 以上的真机调试 不用证书
具体流程如下: 首次使用AppleID 的注意事项: 要在设置中 进行 如下操作 设置--通用--描述文件 ---添加信任 但是有时候 还是 会不能调试, 显示信息 是这样的 : ...
- ps使用方法续
1.找一张皱折的背景,将需要制作的照片拖入背景层,调整尺寸并裁剪,使之 与背景边框相配, 2.调整-色相饱和度,全图:饱和度-35,明度+10, 3.调整图层改成柔光模式,出来旧照片的效果了, 4.色 ...
- 舍伍德(Sherwood)算法学习笔记
一.概念引入 设A是一个确定性算法,当它的输入实例为x时所需的计算时间记为tA(x).设Xn是算法A的输入规模为n的实例的全体,则当问题的输入规模为n时,算法A所需的平均时间为.这显然不能排除存在x∈ ...