批量进行数据转换:sapply
read.xlsx读取了数据后,很多时候是character格式的
代码语言:text复制library(openxlsx)
library(ggplot2)
library(magrittr)
library(ggpubr)
adiv <- read.xlsx("PBC&HC alphaBox_2124.xlsx",colNames = T, rowNames = T, na.strings = "NA") #读取行名列名很方便,以后都改成这个习惯!
在运行compare_means()函数时,必须需要数值型向量
但在后面运行按组比较时,又必须是在一个数据框内
代码语言:text复制pVal <- compare_means(sobs ~ Group, adiv, method = "wilcox.test")$p.format
View(adiv) #有前六列应该是数值,最后一列才是字符
class(adiv) #显示结果是data.frame
class(adiv$sobs) #显示结果是character
如何快捷地将前六列的内容直接转换为数值型,还不需要赋值一个新向量跟最后一列拆开?(同一个表中直接转换,前六列数值,最后一列字符)
代码语言:text复制adiv[,1:6] <- sapply(adiv[,1:6], as.numeric)
str(adiv) #看一下改变后各列的数据格式,成功!