首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

R数据科学|第十一章内容介绍

使用forcats处理因子 因子在 R 中用于处理分类变量。从历史上看,因子远比字符串容易处理。因此,R 基础包中的很多函数都自动字符串转换为因子。...准备工作 使用forcats包来处理因子,这个包提供了能够处理因子的工具,其中还包括了处理因子的大量辅助函数。...library(tidyverse) library(forcats) 创建因子 假设我们想要创建一个记录月份的变量: x1 <- c("Dec", "Apr", "Jan", "Mar") 使用字符串来记录月份有两个问题...在创建因子时,水平设置为unique(x),或者在创建因子后再对其使用fct_inorder()函数,也可以达到这个目的: f1 <- factor(x1, levels = unique(x1))...,那么可以使用 levels() 函数: levels(f2) #> [1] "Dec" "Apr" "Jan" "Mar" 实例练习 选取forcats::gss_cat数据集,该数据集是综合社会调查数据的一份抽样

58220
您找到你想要的搜索结果了吗?
是的
没有找到

机器学习| 一个简单的入门实例-员工离职预测

最后再调用Rmisc包中的multiplot()函数这四幅图合并在一个绘图区域,col=2代表排版时一行放置二。所以合并之前请先下载和安装Rmisc包。...dplyr包和forcats包(install.packages(“dplyr”)、install.packages(“forcats”)),第一次使用前还需要进行加载(library(dplyr)、library...从混淆矩阵可以看出,被正确预测的未离职员工人(实际未离职同时预测也是未离职的人数,即混淆矩阵第一行第一数值)有3317人,被正确预测的离职员工(实际离职同时预测也是离职的人数,即混淆矩阵第二行第二数值...)有963人,错误地预测离职与否的人数(包含实际离职但预测为未离职与实际未离职但是预测为离职的人数,即混淆矩阵的第二和第一数值和第一行第二数值相加)为124+92=216人。...然后基于这一参数值,我们gamma和cost的参数分别设置为1,10,重新查看新生成模型fit.svm1的相关参数信息。 ?

2.8K30

tidymodels菜谱:数据预处理

recipes的使用其实很简单,但是由于数据预处理步骤非常多,难以记住,所以我把一些常用的recipes的预处理函数列在这里,方便大家选择。...由于数据预处理一般是作用于预测变量,有的是数值型,有的是分类变量,所以tidymodels开发了一些好用的函数,用于快速选择变量。...: recipe(HHV ~ ., data = biomass) %>% step_center(all_numeric_predictors()) # 把中心化应用于 "所有的数值型预测变量"...,和forcats包做的事情非常相似,大家可以参考我们的forcats包系列推文: R语言处理因子forcats包介绍(1) R语言处理因子forcats包介绍(2) R语言处理因子forcats...包介绍(3) R语言处理因子forcats包介绍(4) step_dummy() step_bin2factor() step_factor2string() step_string2factor()

19820

数据处理第2节:转换为正确的形状

它涵盖了操纵列以便按照您希望的方式获取它们的工具:这可以是计算新改为离散值或拆分/合并列。...在示例代码中,我们睡眠数据从以小时为单位的数据更改为分钟。...如果需要,可以通过添加.missing参数NA更改为NA以外的其他参数(请参阅下一个示例代码)。...多个级别) ifelse()可以嵌套,但如果你想要两个以上的级别,但是使用case_when()可能容易,它允许你喜欢的语句数量多,并且比许多嵌套的ifelse容易阅读声明。...不幸的是,似乎没有简单的方法让case_when()返回一个有序的因子,所以你需要自己做,之后使用forcats :: fct_relevel(),或者只是一个因子()函数。

8K30

R tips: rlang中的expression操作符

操作在tidyverse系列包中很常见,比如可以因子变量的水平值重新编码的函数fct_recode: ### 定义一个因子变量 test_factor <- factor(letters[1:5])...(test_factor), names = 1:5) recode # 1 2 3 4 5 #"a" "b" "c" "d" "e" ### 替换 forcats::fct_recode...,也可以很简单的自己定义一个c2函数,下面有两种方式定义,都可以: ### 使用enexprs形参值替换为实参值 c2 <- function(...){ args <- enexprs(...)...test := 1, b=2) #a b #1 2 ### 使用enquo可以实参需要执行的环境保留下来 c3 <- function(...){ args <- enquos(...)...enquo()的快捷方式,经常用在对dplyr包中的函数的包装中,效果相当于原样传递参数值: mean_by_group <- function(dat, group, var){ var_name

1.5K10

「R」数据操作(四):初学者学习tidyverse

可以用它解决大部分数据处理问题 tidyr - 清理数据 readr - 读入表格数据 purrr - 提供一个完整一致的工具集增强R的函数编程 tibble - 新一代数据框 stringr - 提供函数集用来处理字符数据 forcats...- 提供有用工具用来处理因子问题 有几个包没接触过,R包太多了,这些强力包还是有必要接触和学习下使用,碰到问题事半功倍。...√ tibble 1.4.2 √ dplyr 0.7.4 ## √ tidyr 0.8.0 √ stringr 1.3.0 ## √ readr 1.1.1 √ forcats...iris %>% mutate(Sepal.Length = Sepal.Length * 10) # 将该数值变成以mm为单位 ## Sepal.Length Sepal.Width...Petal.Length Petal.Width Species ## [6] SLMm ## (或0-长度的row.names) 汇总 summarize()函数可以让我们很多变量汇总为单个的数据点

1.6K30

R语言实战.3

然后,diabetes和status分别指定为一个普通因子和一个有序型因子。最后,数据合并为一个数据框。函数str(object)可提供R中某个对象(本例中为数据框)的信息➋。...它清楚地显示diabetes是一个因子,而status是一个有序型因子,以及此数据框在内部是如何进行编码的。注意,函数summary()会区别对待各个变量➌。...FALSE改为TRUE即允许这块代码执行。 ❏ 一个值赋给某个向量、矩阵、数组或列表中一个不存在的元素时,R将自动扩展这个数据结构以容纳新值。...在下例中,你创建一个名为mydata的数据框,它含有三个变量:age(数值型)、gender(字符型)和weight(数值型)。然后你调用文本编辑器,键入数据,最后保存结果。 ? ? ?...单击的标题,你就可以用编辑器修改变量名和变量类型(数值型、字符型)。你还可以通过单击未使用的标题来添加新的变量。编辑器关闭后,结果会保存到之前赋值的对象中(本例中为mydata)。

1.2K10

诺奖文章里面的动图绘制教程来了!!

NULL)+ theme(text = element_text(family = "Times New Roman", color = "#EEEEEE"), #这部分主题修改,自己尝试,应该有简单的办法...这里用的日期做的时间轴,其它数值变量或因子变量也都可以,注意根据需要修改。如果不是日期变量,不需要as.Date函数转换。 # 注意起始时间一定要早于、晚于真实数据中的时间。...gganimate可以识别这两个,frame指定用哪一做时间轴,每个时间轴会生成1张图片;cumulative表示累加,新的时间轴包含之前的数据。...1000))+ # aes中的frame和cumulative不是ggplot2的标准美学参数,不被识别,会弹出warning,忽略就好 # gganimate可以识别这两个,frame指定用哪一做时间轴...other attached packages: ## [1] ggthemes_3.4.0 maps_3.2.0 BiocInstaller_1.28.0 ## [4] forcats

82150

利用gganimate可视化全球范围R-Ladies(R社区性别多样性组织)发展情况

=NULL)+ theme(text = element_text(family = "Times New Roman", color = "#EEEEEE"), #这部分主题修改,自己尝试,应该有简单的办法...这里用的日期做的时间轴,其它数值变量或因子变量也都可以,注意根据需要修改。如果不是日期变量,不需要as.Date函数转换。 # 注意起始时间一定要早于、晚于真实数据中的时间。...gganimate可以识别这两个,frame指定用哪一做时间轴,每个时间轴会生成1张图片; cumulative表示累加,新的时间轴包含之前的数据。...1000))+ # aes中的frame和cumulative不是ggplot2的标准美学参数,不被识别,会弹出warning,忽略就好 # gganimate可以识别这两个,frame指定用哪一做时间轴...other attached packages: ## [1] ggthemes_3.4.0 maps_3.2.0 BiocInstaller_1.28.0 ## [4] forcats

82211

获取基因有效长度的N种方法

counts矩阵时,基因有效长度信息也同时提取出来用于后续的基因表达量转化。...options(stringsAsFactors = F) library(tidyverse) # ggplot2 stringer dplyr tidyr readr purrr tibble forcats...官方推荐使用EffectiveLength进行后续的分析,它结果中的TPM值也是根据EffectiveLength计算的。...Salmon的输出结果 Salmon的输出结果官方解释 我们一般使用tximport导入salmon的输出文件“quant.sf”(转录本的统计结果)和转录本id与gene symbol对应关系文件,...Salmon官方推荐使用EffectiveLength进行后续的分析,认为其能更好消除测序时基因长度的影响,它结果中的TPM值也是根据EffectiveLength计算的,后续分析中可以直接采用。

4.4K11

R语言的数据结构(包含向量和向量化详细解释)

> x+c(100,200,300,400,500,600) [,1] [,2] [1,] 101 404 [2,] 202 505 [3,] 303 606 上面这个清晰看出按进行填充...最终目的是让结果看起来自然简洁。 3.2向量筛选 筛选filtering就是提取向量中符合一定条件的元素。...4 常见数据结构和向量的关系及常见操作 4.1矩阵 前已述及,矩阵也是向量,特殊的向量,包含量阿哥附加的属性:行和。所以,矩阵也有模式,例如数值型或字符型。但向量不能看做有一或一行的矩阵。...还有合并 apply族函数在数据框中的用法 apply lapply sapply apply 如果数据框的每一的数据类型相同,则可以对该数据框使用apply函数。或针对数据框中的某些应用。...tapply()执行的操作是,暂时x分组,每组对应一个因子水平(多个因子对应一组因子组合),得到x的子向量,然后对这些子向量应用函数g() > ages <- c(25,26,55,37,21,42)

7K20

Forest plot(森林图) | Cox生存分析可视化

之前分享过绘制KM曲线R|生存分析(1),诺莫图展示COX结果Nomogram(诺莫图) | Logistic、Cox生存分析结果可视化,本文简单的介绍如何使用R-survminer包绘制Cox生存分析结果的森林图...(分类变量使用数值表示) 2 森林图优化,调整 1)调整变量名称 LIHC <- within(LIHC, { gender <- factor(gender, labels = c('female...更重要的用途是当分类变量使用1,2... n的数值表示的时候,在图中不会给出分类比较的变量名称,因此需要数值标志的分类变量进行因子转换,然后再绘制。..., #数据集 main = 'Hazard ratio of LIHC', #标题 cpositions = c(0.05, 0.15, 0.35), #前三距离...fontsize = 1, #字体大小 refLabel = 'reference', #相对变量的数值标签,也可改为1 noDigits = 3

2.5K21
领券