r语言中给x的每个元素加上名字为x1到x5应该怎么表示

Python010

r语言中给x的每个元素加上名字为x1到x5应该怎么表示,第1张

可以使用for循环,例如:

for(i in 1:5)

x[[i]] <- paste0("x", i)

或者使用apply函数

x <- apply(x, 2, function(x){paste0("x", x)})

开始一个新的R语言数据分析新项目,管理脚本、图片、文件的推荐方式:打开Rstudio,新建Rproject,新建脚本(脚本存放在生成的Rproject文件夹中)。

若要逆着优先顺序操作,将返回NA

x %in%y是判断x中的每一个元素是否在y中存在。

若x和y长度不一致,返回x个TRUE或者FALSE。

⚠️练习:按如下方式生成test数据框,提取test中,最后一列值为a或c的行,组成一个新的数据框,赋值给test2。

这里如果使用==来判断,就相当于拿test$n的15个值与c('a','c')的2个值来一一对应着比对,因为两者长度不同,会发生循环补齐,其效果如下图,明显不是我们想要的结果。

x%in%y:选出x是y中一个值时的所有行

另:取交集、差集、并集的函数为:intersect(x,y)、union(x,y)、setdiff(x,y)、setdiff(y,x)

match函数的用法参考: https://blog.csdn.net/woodcorpse/article/details/84927296

使用match函数修改矩阵的信息

方法1--设置CRAN镜像:打开R studio,点击tools--global option--packages,选择Package CRAN reposotory。

方法2--设置CRAN和bioconductor镜像

用于读取/导出文件的R包

rio可以不用区分读入文件类型,大部分文件可直接用import()读取。

@ 是R中,S4类的一个操作符, 用于提取S4对象中的内容(slot) ,比如:

这个时候$是不起作用的,因为被S4类重写了。可以自己定义$的行为。

⚠️: matrix不能直接用$取列

⚠️因此如果想取数据框中的部分行,在方括号中直接输入行数即可,返回的仍然是数据框。但如果加了逗号,会丧失数据框的格式,也就是会使数据框的行名(往往是基因名)丢失。

后面存图时可以用paste0连接GSE编号和图片类型及后缀,这样不同数据的分析得到的图片名就跟数据相一致。

通过将变量因子化来设置柱条的顺序

        R语言作图时,默认情况下软件会按照自己的方式对坐标轴的项目进行排序,然而这种排序往往不是我们所希望的,因此需要想办法让坐标轴的项目按照我们希望的顺序输出。

        如下所示,我有两列数据,要绘制箱线图,以第一列为Y轴,第二列为X轴,希望X轴的输出顺序按照第二列由上到下排列。

然而软件输出的顺序如下:

解决方案:

通过一个因子事先自定义X轴顺序,作图命令如下:

至此,X轴各项目会按照我们自定义的顺序排列。