数据转换
2023-06-13 09:13:59 时间
不同数据类型之间的转换
一般的 R 函数只能接受固定类型的数据,例如绘制热图,输入数据必须是数值型向量,数据框则不行,线性回归分析中,输入数据必须为一个数据框。因此,需要熟悉各种数据类型之间的转换。此外,在做数据转换的过程中,还要记住,有些数据只能单方向进行转换,而不能相互转换,例如部分数据框无法转换为数值型矩阵。
getwd()
setwd('/home/xhs/jyxy/11-rbasic/')
dir()
dir()[21]
x <- read.csv('heatmap.csv')
head(x)
class(x)
is.matrix(x)
methods(is)
methods(plot)
rownames(x) <- x[,1]
ncol(x)
x <- x[,-1]
x <- as.matrix(x)
heatmap(x)
ls()
rm(list=ls())
x <- read.csv('CountMatrix.csv',row.names = 1)
class(x)
nrow(x)
colnames(x)
x <- x[,c(1,3,5,7,2,4,6,8)]
colSums(x)
y <- apply(x,2,sum)
barplot(y,las=2)
opar <- par('mar')
par(mar= c(8.1,4.1,4.1,2.1))
par('mar')
barplot(y,las=2)
y
x[1:4,]
x[10:14,]
rbind(x[1:4,],x[10:14,])
rbind(x[1:4,1:4],x[10:14,1:4])
rbind(x[1:4,],x[1:4,])
rbind(x[1:4,2],x[1:4,3])
cbind(x[1:4,2],x[1:4,3])
cbind(x[1:4,1:5],x[1:4,5:8])
rbind(x,y)
tail(rbind(x,cTotal = y))
x <- rbind(x,cTotal = y)
z <- rowSums(x)
x <- cbind(x,rTotal = z)
x <- x[x$rTotal > 0,]#33470
x <- x[x$rTotal > 10,]#22009
#向量和矩阵之间相互转换:给向量加上维度。
x <- c(1:10)
dim(x) <- c(2,5)
#向量和数据框之间相互转换:data.frame,cbind 和 rbind 将向量转换为数据框,取出数据框的
# 每一列为一个向量。
state <- data.frame(state.name,state.abb,state.division,state.area)
#数据框和矩阵之间相互转换:
#as.matrix()将数据框转换为矩阵
iris.mat <- as.matrix(iris[1:4])
#as.data.frame()矩阵转换为数据框。
state <- as.data.frame(state.x77)
#向量和因子之间相互转换;as.factor()函数。
mtcars$cyl <- as.factor(mtcars$cyl)
#修改因子的水平和标签;
mtcars$cyl <- factor(mtcars$cyl,levels = c(4,6,8),labels =
c("four","six","eight"))
写在最后:有时间我们会努力更新的。大家互动交流可以前去论坛,地址在下面,复制去浏览器即可访问,弥补下公众号没有留言功能的缺憾。原地址暂未启用(bioinfoer.com)。
sx.voiceclouds.cn
有些板块也可以预设为大家日常趣事的分享等,欢迎大家来提建议。
相关文章
- 再谈进制转换
- 转换 datetime 和 smalldatetime 数据[通俗易懂]
- 二、八、十、十六进制转换(图解篇)「建议收藏」
- JavaScript如何将Unit8Array图片数据转换为JPG图片
- 【xarray库(二)】数据读取和转换
- RNAseq-GO、biomaRt转换ID
- (十七)51单片机——AD/DA转换
- Word VBA技术:将文档中的超链接转换为普通文本(取消超链接)
- python实现中文繁体和中文简体之间的相互转换详解编程语言
- pandas(七)数据规整化:清理、转换、合并、重塑之合并数据集详解大数据
- 从Oracle 转换为INT的数据类型转换(oracle转int)
- MySQL数据类型转换:从Time到INT(mysql时间转换int)
- Google的J2ObjC工具可以将Java代码转换为iOS的Objective-C
- Oracle高效数据转换:行变列实现数据按需统计!(oracle行变列)
- Oracle转换为数字的奇妙之道(oracle转数字)
- Sqlserver将时间戳转换为分钟(Sqlserver取分钟)
- 利用Oracle实现多行数据转换为多列数据(oracle多行变多列)
- 转换如何快速转换Oracle二进制数据(oracle二进制如何)
- Oracle二维码助你快速转换数据(oracle 二维码)
- Oracle中将空值转换为0的技巧(oracle中将空值置0)
- JavaScriptTOHTML转换
- Json数据转换list对象实现思路及代码
- js实现json数据行到列的转换的实例代码
- Enter转换为Tab的小例子(兼容IE,Firefox)