R基础及应用day1

创建R-project

脚本编辑器

脚本编辑器
控制台
对象/变量列表,历史命令
文件/图片/帮助

设置字体

TOOLS-global options-appareance-

与R交互方式

session

控制台输入命令-逐行运行

脚本编辑器,将代码放入脚本-选中运行

运行的快捷钱:CTRL+ENTER

‘#’表示注释

脚本的保存 默认保存在工作目录 R project在哪里,工作目录就在哪里

出错

1、检查命令
是否真的函数出错
2、环境是否对
函数是否加载
没反应 出现大于号,表示已经运行完成
控制台右上角出现红色,表示正在运行。

命令不完整 光标放入控制台最后一行,esc可以退出

出现提示信息,只要没有出错就不用管。

数据类型

数值型
字符型 需要加引号
逻辑型 TURE FALSE NA
判断数据类型函数 class(),将要判断的内容写在括号里

as族函数实现数据类型之间的转换

as.numeric() #将其他数据类型转换为数值型
as.logical() #将其他数据类型转换为逻辑型
as.charactor() #将其他数据类型转换为字符型
is族函数,判断返回值为TRUE或者FALSE
is.numeric() #是否数值型数据

数据结构

向量 向量是数据框单独拿出的一列,一个向量只能有一种数据类型
数据框 数据框约等于表格
矩阵
列表

向量的生成

1、用c()逐一放到一起
2、连续的数字用冒号
1:15
3、有重复的用rep,有规律的用seq,产生正态分布的随机数用rnorm

rep('name',times=3)  #rep('name',3)  
[1] "name" "name" "name"
seq(from=1,to=10,by=2)  #seq(1,10,2)
[1] 1 3 5 7 9
rnorm(10,mean = 3,sd=1)  #10个均值为3标准差为1的正态分布随机数
[1] 2.312311 2.807461 3.754154 3.821252 4.873431 3.592244
 [7] 4.538984 3.921063 2.783121 3.521947

4、通过组合,产生更复杂的向量

paste0(rep('sample',times=7),seq(from=4,to=30,by=4))
paste0(rep('gene',times=15),1:15)
微信图片_20200210214328.png

数据类型转换的优先顺序

对单个向量进行的操作

1、赋值给一个变量名

x=
x<-

2、对单个向量进行的操作

初级统计:

max(x)  #最大值
min(x)  #最小值
range(x)  #max和 min
which.max(x)  #最大值下标
which.min(x)  #最小值下标
mean(x)  #均值
median(x)  #中位数
var(x)  #方差
sd(x)  #标准差
sum(x)  #总和

常用函数

sort(x) #排序
length(x); #长度,或者元素个数
unique(x);#去重复
table(x)  #重复值统计

对两个向量的操作

逻辑比较
简单数学运算
连接 paste(x,y,sep=':')
交集,并集,差集:

intersect(x,y)
union(x,y)
setdiffx,y)

循环补齐:当两个变量长度不相等的时候,短的循环补齐。

按照要求选择元素

问题:从1000 个基因名中,选指定的 30 个。
思考:
1000个基因名赋值给向量 x,30个基因名赋值给 y

x %in% y

返回多少个逻辑值,挑选结果为TRUE 的。
1、x %in% y
2、向量筛选(取子集):[ ],将 TRUE 对应的值挑选出来, FALSE 丢弃。


微信图片_20200211165855.png

3、修改向量中的某个元素

x[4]<-20  #将第四个位置的数改成20
x[x>30]<-20  #将x中大于30的数改成20

例题:生成 100 个随机数 : rnorm (n=100,mean=0,sd=18)
将小于2 的统一改为 2 ,将大于 2 的统一改为 2

> a<-rnorm(n=100,mean = 0,sd=18)
> a[a<(-2)]<-(-2);a[a>2]<-2;a

选出x中除了倒数第二个以外的名字

x[-(length(x)-1)]
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 4,262评论 1 10
  • 函数的编写 参考文章 格式如下所示: 函数案例A 输入直角三角形的两个边长,求斜边长 运行结果如下所示: 函数案例...
    天涯清水阅读 6,150评论 3 7
  • 《R语言入门》的读书笔记 本书的重点内容及感悟: 第一章 导言 1、R是一个有着统计分析功能及强大作图功能的软件系...
    格式化_001阅读 12,711评论 0 9
  • R语言前身是S语言,S语言是由AT&T Bell实验室的Rick Becker、John Chambers、All...
    JunChow520阅读 2,151评论 0 1
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 3,249评论 2 9

友情链接更多精彩内容