• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

R语言学习-----数据输入

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

前情回顾

  前面仔细对R的编辑环境和R包的使用进行了介绍,后面正式进入R的程序学习中。需要提醒的是,后续的学习需要一定程度地加快速度,因为缓慢的学习进程已经严重影响到了学习的积极性,前两天就产生了很严重的厌学情绪。因此,后续逐步调控慢慢加快学习进度,有些细节暂可不必细较,先保持能学习下去,每天都有较多的可消化学习内容和成果,学习效果底线是能完成所有习题
  废话不多说,开始今天的内容,计划今天完成R的数据输入的大部分内容(本来龟速学习可能需要共计一周的时间)。

小型数据库中的数据录入 变量 = 数据

  直接再命令行窗口输入或者在R脚本中输入后点击source,注意输入的数据会一直存在,除非删除掉。语句类似于赋值语句"=",也可以用"<-"符号代替。输入的变量可在右上角的窗口看到:

应用c函数连接数据 变量 = c(a, b, c, d)

  把一个变量用c函数连接多个数据,类似于python中的列表,查看或者调用数据时也是使用 变量[a:b]:查看从第a个值开始到第b个值,注意第一个值是从第1开始(不是第0)。
  可以使用各种计算函数(如sum)来操作向量变量,但是向量中可能会有缺失值(NA),可以用"na.rm = True"来忽略掉缺失值,不加此参数赋值的话默认为False。

习题一:c和sum函数的使用
  注意平均函数是mean(),而不是average()。

使用c, cbind和rbind结合变量 新变量 = c/cbind/rbind(变量1, 变量2, 变量3)

  对不同的向量还可以继续用c函数连接,产生的新变量是一个连接在一起的单个变量(而不是二维变量)。因此,无法区分新变量里的数据是属于前面的哪个变量中,需要一个ID向量来表示。可以使用 rep函数来生成重复数据的变量:

Id = rep(c(1, 2, 3, 4), each=8)
Id = rep(1 : 4, each=8)
其中向量序列(1,2,3,4)的产生也可以使用seq(from=1, to 4, by=1),去掉单词“each”,结果会编程新向量的重复,而不是每个值的连续分别重复,如下图:


  使用cbind和rbind连接向量得到的是二位的向量,类似于表格一样,可以使用命令按行或者列进行选取。二者区别如下:

习题二:使用流行病学数据练习cbind函数的应用
  使用cbind结合月份长度和Tb的数据定打印某行、某列和某值:
  使用dim, nrow, ncol函数来确定Boar中动物和变量的数量:动物的数量是列长,也就是7;数据个数是行*列,共21个。注意不会使用的函数用 ?函数来查询。

使用vector函数结合数据 变量 = vector(length = 8) 变量[1] = a 变量[2] = b .......

  vector函数的用法和c函数类似,不同点在于要先定义向量的长度,并且在所有元素的赋值都完成之后才能使用。
习题三:使用流行病学数据练习vector函数的应用
  用vector函数结合Tb数据,变量名为Tb2:

使用矩阵结合数据 矩阵名 = matrix(nrow=8, ncol=4) 按列赋值 colnames(矩阵名) = c("标签1", "标签2", "标签3")

  简单说就是,首先定义特定大小的矩阵,然后按列进行赋值,最后用colnames函数加标签。结果和cbind函数产生的一样,有点类似于 vector函数和c函数的关系。
  注意:as的用处,比如 矩阵名 = as.matrix(cbind(向量1, 向量2, 向量3, 向量4)),如果as.matrix函数的参数是矩阵则提示TRUE,否则FALSE。
习题四:对矩阵的操作
  生成矩阵,并确定它的转置矩阵和逆矩阵,同时计算它和逆矩阵的乘积(结果是单位矩阵)。其中,t()产生转置矩阵,solve()产生逆矩阵,%*%用来矩阵相乘。结果的单位矩阵中的一些数字为精确数字,查询资料得知,这和计算机制有关,计算结果只会无限接近单位矩阵。


学习感悟:又开始拿起来R了,并且调整了学习的速度,感觉又来啦!!以后学习就这样来,保持速度,坚守底线。今天对小量数据的输入方式基本掌握了,后面还有data.fram函数结合的方式留到下节再学。下节也要接触数据的载入了,这才是大数据用的最多的方式,期待中,加油~~


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
《R语言实战》读书笔记(一) - 木子了发布时间:2022-07-18
下一篇:
数据挖掘与R语言 - 华章公司发布时间:2022-07-18
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap