R语言基础6讲
R语言基础课程 6讲
第一讲
1.0 前言
关于Rstudio的操作
设置样式和字体
Tools>Global Options>Appearance

讯享网下载包
Tools>Global Options>Packages 选择地区
Tools>Install Packages

简单快捷键
CTRL+L 清屏
CTRL + SHIFT + ENTER 全部运行
CTRL + ENTER 运行光标所在代码
CTRL + SHIFT + C 注释
1.1 向量
产生向量函数--------c
向量切片跟python类似,唯一不同的是下标从1开始
注: 向量的删除元素用v[-i]来表示,这里的i是要删除的下标位置,负号代表删除的意思
which 函数返回符合要求的下标值
> v=c(1,4,4,3,2,2,3)# 创建一个向量 > v[c(2,3,4)] # 向量切片 [1] 4 4 3 > v[2:4] [1] 4 4 3 > v[c(2,4,3)] [1] 4 3 4 > v[-2] # 向量删除序列号为2的值,返回新的向量,不改变原来的 [1] 1 4 3 2 2 3 > v[-2:-4] [1] 1 2 2 3 > v[v<3] # 返回所有小于3的元素 [1] 1 2 2 > which(v==3)#返回 等于3的数的序列号 [1] 4 7 > which.max(v) # 返回最大值序列号 第一个 [1] 2 > which.min(v) # 返回最小值序列号 第一个 [1] 1
讯享网
1.2 随机数
set.seed的作用是设置随机数种子,我们可以看到,相同的随机数种子所产生的随机数序列是有着一定的顺序的
runif(n,min=0,max=1) (生成均匀分布随机数)n表示生成的随机数数量,min表示均匀分布的下限,max表示均匀分布的上限;若省略参数则默认生成[0,1]上的均匀分布随机数。
其他的随机数生成方法可以自行百度
用R生成随机数
讯享网> set.seed(250) #随机数种子 > a = runif(3,min=0,max=100) > a [1] 26.54018 77.90907 16.90836 > set.seed(125) > a = runif(3,min=0,max=100) > a [1] 82.46744 11.68510 29.97806 > a = runif(3,min=0,max=100) > a [1] 35.65607 96.51950 96.75605 > a = runif(3,min=0,max=100) > a [1] 53.30924 33.21555 65.38438 > set.seed(250) > a = runif(3,min=0,max=100) > a [1] 26.54018 77.90907 16.90836 > a = runif(3,min=0,max=100) > a [1] 84.26782 79.99474 96.74011 > set.seed(125) > a = runif(3,min=0,max=100) > a [1] 82.46744 11.68510 29.97806 > a = runif(3,min=0,max=100) > a [1] 35.65607 96.51950 96.75605
floor函数向下取整 直接去掉小数位
ceiling函数向上取整 只要有小数就进一
round保留小数
> floor(a) [1] 26 77 16 > ceiling(a) [1] 27 78 17 > round(a,4) [1] 26.5402 77.9091 16.9084
注: 使用?round或??round可以查看文档帮助
1.3 读取文件
R语言中使用read.csv read.table等方式来读取文件
我们先读取网上的一段信息,比较table和csv的区别
讯享网> data1 = read.csv('http://www.macalester.edu/~kaplan/ISM/datasets/swim100m.csv') > data2 = read.table('http://www.macalester.edu/~kaplan/ISM/datasets/swim100m.csv')
数据读完后,我们可以看到csv读取的数据只有62行,而table读取的数据只有1列,下面详细的看一下到底是什么情况


我们发现read.taoble在读取的时候将标题行(第一行也算入了数据中)
而read.csv确没有这样,他默认把第一行当做标题行来对待

attach可以讲上述数据中的列名转化为变量名来使用 ,如下
> data1 = read.csv('http://www.macalester.edu/~kaplan/ISM/datasets/swim100m.csv') > year 错误: 找不到对象'year' > attach(data1) > year [1] 1905 1908 1910 1912 1918 1920 1922 1924 1934 1935 1936 1944 1947 1948 1955 1957 1961 1964 1967 [20] 1968 1970 1972 1975 1976 1981 1985 1986 1988 1994 2000 2000 1908 1910 1911 1912 1915 1920 1923 [39] 1924 1926 1929 1930 1931 1933 1934 1936 1956 1958 1960 1962 1964 1972 1973 1974 1976 1978 1980 [58] 1986 1992 1994 2000 2004
1.4 简单画图
讯享网> set.seed(123) > x=rnorm(100,mean = 100,sd = 10) > set.seed(234) > y=rnorm(100,mean = 100,sd = 10) > hist(x,breaks = 20)

注:直方图的绘制
直方图绘制参数介绍
plot(density(x)) #density计算密度

讯享网plot(x) # 散点图

boxplot(x,y) # 箱图

注:图可以帮我们鉴别样本的分布是否近似于某种类型的分布
norm函数绘制正态分布的图line函数用于绘制图的近似直线,其解析式为y=ax+b,a是正态分布的标准差,b为均值
讯享网norm(x) line(x)

plot(x,y)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/23251.html