R语言基础学习——D02

20190423内容纲要:

  1、前言

  2、向量操作

    (1)常规操作

    (2)不定长向量计算

    (3)序列

    (4)向量的删除与保留

  3、列表详解

    (1)列表的索引

    (2)列表得元素属性

    (3)更改列表元素

    (4)删除列表元素

    (5)合并两个列表

    (6)将列表转换为向量

  4、推荐

1、前言

怕什么真理无穷,进一寸有进一寸的欢喜。

先随便玩点什么?

>ls()
#ls查看当前创建的变量,没有。那我们创建几个变量
>data <- c(1,2,3,4)
>string <- "I like R"
>ls()
#那么如果想删除变量呢
>rm(data)
>ls()

感觉跟linux命令太像了!有时间把linux的学习笔记整理一下!!!

下面说两个小技巧:

#(1)换行。
# 不要把一句话输完,缺一个括号啊什么的,回车它会显示一个“+”号,这样就可以接着写语句,算是换行了
>mylist <- list(stud.id=1234,
+ stud.name="Tom",
+ stud.marks=c(12, 3, 14, 25, 18))
#(2)清屏
Ctrl + L

2 向量操作

(1)常规操作

# 创建向量
>a <- c(1,2,3,4)
#(1)查看长度length
>length(a)
#(2)查看类型mode
>mode(a)
#(3)数字类型强行转成字符型
>c <- c(1,2,3, "r")
>mode(c)
#(4)更改向量中的元素
>c[2] <- "test"
>c
#5)可以对向量中的每一个元素都求平方根>x <- c(4,8,6,7)
>y <- sqrt(x)
#(6)对向量进行加减计算当两个长度不等的向量相加会是怎样的呢???
>z <- x + y

 (2)不定长向量计算

#(7)当两个长度不等的向量相加,不是补零,而是将短的循环与长的加一起!python中的广播?#不同长度的向量相加时需要特别注意长的对象长度不是短的对象长度的整倍数
>  x <- c(1, 1, 1, 1, 1)
> y <- c(2, 2, 2)
> z <- x + y
Warning message:
In x + y : 长的对象长度不是短的对象长度的整倍数
>  x <- c(1, 1, 1, 1, 1, 1)
> y <- c(2, 2, 2)
> z <- x + y
> z
[1] 3 3 3 3 3

(3)序列

#(8)生成序列
#生成序列,从1开始10结束,步长为2
> x <- seq(1,10,2)
> x
[1] 1 3 5 7 9
#生成循环序列,序列数5,循环10
> x <- rep(5,10)
> x[1] 5 5 5 5 5 5 5 5 5 5
#生成循环序列,序列数1:3,循环3次
> rep(1:3, 3)
[1] 1 2 3 1 2 3 1 2 3
#生成10个均值为0,方差为1的随机数
> rnorm(10)[1] -1.6103872 -1.3784579  1.8143056  0.7482350  2.5612867 -1.5183595 -0.6851633 -1.0225507  0.2810904  0.1618640
#生成6个均值为6,方差为2的随机数
> rnorm(6, mean=6, sd=2)
[1] 5.792479 7.257183 7.816276 5.060411 6.039296 3.343846

(4)删除和保留向量

#(9)删除向量中的一个元素
> x <- c(0, -3, 4, -1, 45, 98, -12)
#只保留大于0的
> x[x>0]
[1]  4 45 98
#只保留小于等于2或者大于5的
> x[x<=-2 | x>5]
[1]  -3  45  98 -12
#不要第五个
> x[-5]
[1]   0  -3   4  -1  98 -12
#不要前三个
> x[-(1:3)]
[1]  -1  45  98 -12

3 列表详解

首先创建一个列表。增删改查都有。

> mylist <- list(stud.id=1234,
+ stud.name="Tom",
+ stud.marks=c(12, 3, 14, 25, 18))
> mylist
$stud.id
[1] 1234$stud.name
[1] "Tom"$stud.marks
[1] 12  3 14 25 18

(1)查列表的索引(切片)

首先,R语言中的列表的索引(切片)不太一样,单、双括号都可以,提取的元素不一样。

此外,不是从0开始!不是从0开始!不是从0开始!

> x <- 1:1000
> length(x)
[1] 1000

#第一种
> mylist[[1]]
[1] 1234
#第二种
> mylist[1]
$stud.id
[1] 1234
#第三种
> mylist$stud.id
[1] 1234> mylist[[0]]
Error in mylist[[0]] : attempt to select less than one element in get1index <real>

(2)查列表的元素属性

#查看类型
>  mode(mylist[[1]])
[1] "numeric"
> mode(mylist[1])
[1] "list"#查看名称,其实也算是切片的一种。类似python中的字典,取key,上面的索引取value
> names(mylist)
[1] "stud.id"    "stud.name"  "stud.marks"

(3)更改列表元素

#添加元素
> mylist$parents <- c("man", "Jutice")
> mylist
$id
[1] 1234$names
[1] "Tom"$marks
[1] 12  3 14 25 18$parents
[1] "man"    "Jutice"

(4)删除列表元素

> length(mylist)
[1] 4
> mylist <- mylist[-4]
> mylist
$id
[1] 1234$names
[1] "Tom"$marks
[1] 12  3 14 25 18

(5)合并两个列表

> other <- list(age=19, sex="male")
> other
$age
[1] 19$sex
[1] "male"> newlist <- c(mylist, other)
> newlist
$id
[1] 1234$names
[1] "Tom"$marks
[1] 12  3 14 25 18$age
[1] 19$sex
[1] "male"

(6)将列表变成一个向量unlist

> unlist(newlist)id  names marks1 marks2 marks3 marks4 marks5    age    sex
"1234"  "Tom"   "12"    "3"   "14"   "25"   "18"   "19" "male" 

4、推荐

  其实最近最近关于R语言的学习断了快半个月了,没怎么看这方面的。有时间整理一下PLC的资料!!!

推荐几个python实战项目吧。有时间可以试一试:别光说不做!!!

(1)python实战项目 | python制作天气查询软件  https://mp.weixin.qq.com/s/Yca8RM_ivxND48NVM4qffg

(2)python实战项目 | python创建微信机器人  https://mp.weixin.qq.com/s/LQ_4GcI9c_MeBTpQKc7eAg

我是尾巴~

人生在世,需要一点高于柴米油盐的品相!

别失去希望,再坚持一下!

转载于:https://www.cnblogs.com/zhangkanghui/p/10692148.html

D02-R语言基础学习相关推荐

  1. R语言基础学习记录4:重要函数

    时间: 2018-07-18(学习) 2018-07-22(学习记录) 教程:慕课网 <R语言基础> 讲师:Angelayuan 补充内容: R语言常用函数总结大全.gl()函数 学习内容 ...

  2. 数据分析之R语言基础学习一

    数据分析--R语言1 一.基础 二. 简单的数据处理 2.1 下载数据包 install.packages("nycflights13") #安装数据包,美国运输统计局13年从纽约 ...

  3. R语言基础学习:矩阵及矩阵的基础操作

    R语言的矩阵在数据操作的工作中十分的方便,也十分实用,给批量操作提供了简便的工具: 以下是整理的上课笔记: #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ...

  4. R语言小白学习笔记12—概率分布

    R语言小白学习笔记12-概率分布 笔记链接 学习笔记12-概率分布 12.1 正态分布 12.2 二项分布 12.3 泊松分布 12.4 其他分布 笔记链接 学习笔记1-R语言基础. 学习笔记2-高级 ...

  5. R语言小白学习笔记13—基本统计

    R语言小白学习笔记13-基本统计 笔记链接 学习笔记13-基本统计 13.1 概括性统计量 13.2 相关系数和协方差 13.3 t-检验 13.3.1 单样本t检验 13.3.2 两样本t检验 13 ...

  6. R语言小白学习笔记3—R语言读取数据

    R语言小白学习笔记3-R语言读取数据 笔记链接 想说的话 学习笔记3-R语言读取数据 3.1 读取CSV文件 3.1.1 read_delim函数 3.1.2 fread函数 3.2 读取Excel数 ...

  7. R语言基础知识入门学习(一)

    目录 系列文章目录 一.软件下载 二.基本知识 1. 对象 2. 向量 3. 向量化 4. 因子 总结 系列文章目录 R语言基础知识入门学习(一) 一.软件下载 我们可以通过这个网址对R语言软件进行下 ...

  8. R语言基础知识-学习笔记汇总

    B站课程:生信必备技巧之R语言基础教程全集的代码笔记 1.R语言包安装 rm(list = ls()) # 设置镜像: options()$repos options()$BioC_mirror #o ...

  9. 数据分析必备:掌握这个R语言基础包1%的功能让你事半功倍!(附代码)

    来源:大数据 本文约7100字,建议阅读15分钟. 本文介绍了utils包在R语言基础的用途. [ 导读 ]无论数据分析的目的是什么,将数据导入R中的过程都是不可或缺的.毕竟巧妇难为无米之炊.util ...

  10. 为什么R语言是学习数据分析的第一选择

    数据时代已经到来,但数据分析.数据挖掘人才却十分短缺,据全球顶尖管理咨询公司麦肯锡(McKinsey)一份详细分析报告显示: >>>> 预计到 2018 年,大数据或者数据工作 ...

最新文章

  1. 大数据时代千帆竞发,三代测序激流勇进
  2. winform中获取指定文件夹下的所有图片
  3. 词汇量贫乏只会说yes、no?试试这些高级感替代词!
  4. 4个Keynote、12篇论文分享、40个Poster,CVPR 2021论文分享会全日程公布
  5. 数据库连接池工作原理
  6. Linux CentOS下安装Oracle
  7. Python+Selenium自动化篇-5-获取页面信息
  8. 【Spring Cloud中文社区】正式启动
  9. 《深入理解Android:卷III A》一一第3章 深入理解AudioService
  10. MyBatis3_[tp_41-42-43]-_动态sql_trim_自定义字符串截取_choose分支选择_update的set与if-trim 结合的动态更新...
  11. 秒杀系统设计思路与实现
  12. 打开本地安全策略的方式
  13. html常见基础标签大汇总
  14. A 5G Odyssey :2021北京漫游
  15. NPOI编辑WORD文档
  16. 把汉字转换成拼音的util
  17. 我们说运营,到底是在说运营什么?
  18. html网页常用功能:下拉框模糊搜索
  19. crypto安装_Mac安装Golang和vscode
  20. ISDB-T DVB-T DTV ATV

热门文章

  1. pands库中的一些函数用法
  2. 附件 计算机 丢失,帮你找回Win7开始菜单附件丢失的工具
  3. MatConvnet工具箱文档翻译理解二
  4. 【论文笔记】基于2-channel network的图片相似度判别-CVPR 2015
  5. sklearn2pmml模型转化实践
  6. Git的使用--如何将本地项目上传到Github(两种简单、方便的方法)
  7. Tf-idf推导及理解
  8. 2021-06-0贪吃蛇练习
  9. 三国演义人物出场统计代码含义_用python分析小说人物关系(二)——实战篇
  10. 初始MySQL增删改查数据