- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
R语⾔回归分析实例
本⽂包含多元线性回归及逻辑回归两种算法,个⼈实践操作,希望 与⼤家⼀起交流分享,如有描述不当之处,欢迎并多谢指正。
#⼀、公共部分,加载并审核数据、设置数据分区
#
# 1、设置⼯作 ⽬录
setwd(E:/R语⾔建模实例)
#
#2、加载数据,header=TRUE表⽰读取表头,sep为分隔符设置
userdata - read.table(file=⽤户清单.txt,header = TRUE,sep = ,)
#
#3、查看统计量并进⾏数据审核
vsummary-summary (userdata)
View(vsummary)
#数据审核相关函数说明
#summary ()函数可以获取描述性统计量,可以提供最⼩值、最⼤值、四分位数和数值型变量的均值,以及因⼦向量和逻辑型向量的频数统
计
#misc包中的describe()函数,可返回变量和观测的数量、缺失值和唯⼀值的数 ⽬、平均值、分位数,以及五个最⼤的值和五个最⼩的值
#psych包中的describe()函数,psych包也拥有⼀个名为describe()的函数,它可以计算⾮缺失值的数量、平均数、标准差、中位数、截
尾均值、绝对中位差、最⼩值、最⼤值、值域、偏度、峰度和平均值的标准误
#pastecs包中的stat.desc()的函数,可以计算种类繁多的描述性统计量。使⽤格式为 :
stat.desc (x,basic=TRUE,desc=TRUE,norm=FALSE,p=0.95)
#其中的x是⼀个数据框或时间序列。若basic=TRUE (默认值),则计算其中所有值、空值、缺失值的数量,以及最⼩值、最⼤值、值域,
还有总和。若desc=TRUE (同样也是默认值),则计算中位数、平均数、平均数的标准误、平均数置信度为95%的置信区间、⽅差、标准
差以及变异系数。最后,若norm=TRUE (不是默认的),则返回正态分布统计量,包括偏度和峰度 (以及它们的统计显著程度)和
Shapiro –Wilk正态检验结果
#str()函数,以简洁的⽅式显⽰对象的数据结构及内容,可以查看数据框中每个变量的属性
#attributes()函数,可以提取对象除长度和模式以外的各种属性
library (psych)
vdescr-describe(userdata)
View(vdescr)
#⽤View查看结果,依次是变量名称、顺序号、元素数量、平均值、标准差、中位数、截尾均值、绝对中位差、最⼩值、最⼤值、值域、偏
度、峰度和平均值的标准误差
#
#4、相关性矩阵,变量较多,最好是将矩阵保留到变量中,⽤View()函数查看
vcor-cor(userdata)
View(vcor)
#⽤离⽹标识来举例,可以从结果上查看相关系数⽐较⾼的⼀些指标,
#近三⽉通话次数波动率为负相关,近三个⽉⽋费次数、当⽉0通话天数为正相关
#
#5、去掉⽤户ID,筛选完后可以⽤str()函数查看⼀下筛选情况
newusdata-userdata[,c(- 1)]#- 1中,-号为排除变量,1表⽰排除第⼀列
#6、分箱,分出训练集和测试集
set.seed(1234)
#样本抽取,分两个箱,replace=TRUE为允许放回抽取,FALSE为⼀次性抽取,prob为抽取概率
ind - sample(2, nrow(newusdata), replace=TRUE, prob=c(0.5, 0.5))
#获取训练集
trainData - na.omit(newusdata[ind== 1,]) #顺便使⽤na.omit()函数清洗⽆效数据
#获取测试集
testData - na.omit(newusdata[ind==2,]) #顺便使⽤na.omit()函数清洗⽆效数据
#可以统计⼀下训练集数据
nrow(trainData)
#[1] 37528
nrow(testData)
#[1] 37340
#⼆、多元线性回归
#我们先来看⼀下ARPU和业务使⽤量等指标之间的线性回归
#7、训练多元线性回归模型,预测出账收⼊,先构建ARPU与所有其它变量的线性关系模型
fit_all-lm(出账收⼊~., data = trainData)
#8、观察并解读模型统计量
summary (fit_all)
#模型fit_all的统计量 start
# Call:
# lm(formula = 出账收⼊ ~ ., data = tra
您可能关注的文档
最近下载
- 要素式起诉状(机动车交通事故责任纠纷).doc VIP
- 焙烧炉天然气燃烧自动控制系统的研究与应用.docx VIP
- 2019-2020学年上海市市东中学高三政治测试题.docx VIP
- 上海市市东中学2023年高二物理联考试题含解析.docx VIP
- 上海市市东中学2022年高二地理月考试题含解析.docx VIP
- 上海市市东中学高二化学上学期期末试卷含解析.docx VIP
- 上海市市东中学高三化学上学期期中试题(含解析).doc VIP
- 上海市市东中学2021-2022学年高二物理测试题含解析.docx VIP
- 个人信息保护影响评估报告(模板).docx VIP
- 上海市市东中学2021-2022学年高一下学期期中语文试题 Word版无答案 .docx VIP
原创力文档


文档评论(0)