首页 > 分享 > R语言

R语言

最近用R语言干了下面的事情 1 如何取消科学计数法?2 ggplot常用绘图函数2.1 对比箱线图2.2 对数+1对比箱线图 2.3 对数对比箱线图2.4 计算实际中位数 3 如何算两个向量的差集?4 如何用rmd直接输出word

1 如何取消科学计数法?

options(scipen = 200) # scipen 表示在200个数字以内都不使用科学计数法 1

2 ggplot常用 绘图 函数

参考 https://mp.weixin.qq.com/s/9r5CP7-nwm8FskXRfjHLvg

2.1 对比箱线图

BoxPlot <- function(x_name,y_name,i,trans_bf,label_f){ # 函数作用:直接取对比箱线图 # x_name表示变量的具体含义 放在y轴 是一个矢量 存放所有 # y_name表示变量对应的字段名称 用来取列 是一个矢量 存放所有 # i表示取第几个变量 # trans_bf表示用于分析的数据框 # label_f表示因子化之后的label xname = x_name[i] p = ggplot(trans_bf,aes(x = label_f ,y = trans_bf[,y_name[i]], fill = label_f)) + geom_boxplot(show.legend = FALSE) + scale_fill_manual(values=c("#4F94CD", "#FFB90F"))+ # 使用scale_fill_manual来填充箱子颜色 theme_grey(base_family = 'STKaiti')+ # 直接这句命令就可以在mac上使用中文字体 labs(x = '法人类型', y = paste0('',xname)) p }

123456789101112131415

2.2 对数+1对比箱线图

BoxPlotlog1 <- function(x_name,y_name,i,trans_bf,label_f){ # 函数作用:取对数+1对比箱线图 # x_name表示变量的具体含义 放在y轴 是一个矢量 存放所有 # y_name表示变量对应的字段名称 用来取列 是一个矢量 存放所有 # i表示取第几个变量 # trans_bf表示用于分析的数据框 # label_f表示因子化之后的label xname = x_name[i] p = ggplot(trans_bf,aes(x = label_f ,y = log(trans_bf[,y_name[i]]+1), fill = label_f)) + geom_boxplot(show.legend = FALSE) + scale_fill_manual(values=c("#4F94CD", "#FFB90F"))+ theme_grey(base_family = 'STKaiti')+ labs(x = '法人类型', y = paste0('对数+1',xname)) p }

123456789101112131415

2.3 对数对比箱线图

BoxPlotlog <- function(x_name,y_name,i,trans_bf,label_f){ # 函数作用:取对数+1对比箱线图 # x_name表示变量的具体含义 放在y轴 是一个矢量 存放所有 # y_name表示变量对应的字段名称 用来取列 是一个矢量 存放所有 # i表示取第几个变量 # trans_bf表示用于分析的数据框 # label_f表示因子化之后的label xname = x_name[i] p = ggplot(trans_bf,aes(x = label_f ,y = log(trans_bf[,y_name[i]]), fill = label_f)) + geom_boxplot(show.legend = FALSE) + scale_fill_manual(values=c("#4F94CD", "#FFB90F"))+ theme_grey(base_family = 'STKaiti')+ labs(x = '法人类型', y = paste0('对数+1',xname)) p }

123456789101112131415

2.4 计算实际中位数

label_f <- factor(trans_bf$label,levels = c("0", "1"),labels=c('l1','l2'),ordered = T) y_name = as.vector(trans_name$变量名称) CalMed <- function(trans_bf, y_name, i, label_f){ # 函数作用:计算实际中位数 # y_name表示变量对应的字段名称 用来取列 是一个矢量 存放所有 # i表示取第几个变量 # trans_bf表示用于分析的数据框 # label_f表示因子化之后的label median <- aggregate(trans_bf[,y_name[i]], by = list(count = label_f), median) %>% as.data.frame() colnames(median) = c('法人类型', '实际中位数') median }

12345678910111213

3 如何算两个向量的差集?

问题:如何计算all_i和org_i的差集 也即两个向量相减。
在这里插入图片描述
代码 如下:

# 实现两个向量中元素的相减 org_i <- c(9,10,12,17) all_i <- c(4:31) # 定义一个空向量 log_i <- c() # 循环all_i每一个元素 判断其是否在org_i 如果在继续,不在则补充到log_i for (i in all_i) { if (i %in% org_i) next else log_i <- c(log_i, i) }

123456789101112

知识点 补充:

next的用法(直接跳过本次循环,进入到下一次循环),区别于break;判断向量中是否包含某个元素!(使用 %in% 区别于Python直接使用in)R语言中相关符号的写法

4 如何用rmd直接输出word

新建rmd文件(注意选择转化为word)如果有图形希望显示在word里,必须得用printwindows转化后图片的清晰度高于mac,玄学。

相关知识

R语言k
R语言“
r语言数据分析案例
用R语言绘制玫瑰花
R语言数据分析案例:鸢尾花(IRIS)
R语言高效自学—R粉们最值得关注的几个社区
鸢尾花数据 r语言绘图
R语言的apply族函数
掌握R语言:交互式绘图的实战技巧
r语言 Iris鸢尾花数据的散点图

网址: R语言 https://m.huajiangbk.com/newsview2597510.html

所属分类:花卉
上一篇: 百香果花期用什么肥坐果?科学施肥
下一篇: 《临床操作技能评估》课件