将因子转换为数字

 在 R 中使用 as.numeric 函数将因子转换为数字

as 函数通常用于将数据类型显式转换为另一种类型。转换过程在 R 术语中称为强制转换,它表示其他编程语言中存在的强制转换概念。当我们调用函数 as.logical 时,它会尝试将传递的参数强制转换为逻辑类型。类似地,as.character 和 as.numeric 将给定的参数转换为相应的类型。请注意,转换为逻辑类型的任何数字(零除外)都表示 TRUE 值,甚至是负值。

> as.logical(31)
[1] TRUE> as.logical(-31)
[1] TRUE> as.character(31)
[1] "31"> as.numeric(FALSE)
[1] 0> as.numeric(TRUE)
[1] 1

R 还实现了隐式类型强制规则,当对由不同类型组成的向量进行算术运算时需要这些规则。如以下代码片段所示,如果原子向量包含字符串,则其他所有元素也会转换为字符串。如果向量包含逻辑、数字和字符串的混合元素,它们将被强制转换为字符串类型。最后,当向量包含数字和逻辑时,将后者转换为数字。

> v1 <- c(1, "two", 3, 4, 5, 6)> typeof(v1)
[1] "character"> v1 <- c(T, "two", 3, 1, F, T)> typeof(v1)
[1] "character"> v1 <- c(1, T, 3, F, 5, 6)> typeof(v1)
[1] "double"

将因子转换为数字时,重要的是要注意 as.numeric 将只返回底层整数表示,这几乎没有意义并且不对应于因子级别。可以使用 unclass 函数检查因子对象是如何在内部存储的。请注意,f2 因子的索引为 2 1 2 3,通常使用 as.number 调用返回,如下面的代码示例所示:

> f2 <- factor(c(3, 2, 3, 4))> f2
[1] 3 2 3 4
Levels: 2 3 4> f2.n <- as.numeric(f2)> unclass(f2)
[1] 2 1 2 3
attr(,"levels")
[1] "2" "3" "4"> f2.n
[1] 2 1 2 3

在 R 中结合 as.character 和 as.numeric 函数将因子转换为数字

通过组合 as.character 和 as.numeric 函数,可以将因子级别转换为整数类型。as.character 以字符串形式返回因子水平。然后我们可以调用 as.numeric 函数将字符串强制转换为数字。

> f2 <- factor(c(3, 2, 3, 4))> f2.c <- as.character(f2)> f2.c
[1] "3" "2" "3" "4"> f2.c <- as.numeric(as.character(f2))> f2.c
[1] 3 2 3 4

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/671629.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

精酿啤酒:发酵过程中的温度控制与效果

在啤酒酿造过程中&#xff0c;发酵温度的控制重要&#xff0c;它不仅影响酵母菌的活性&#xff0c;还决定了啤酒的口感、香气和风味。对于Fendi Club啤酒来说&#xff0c;切确控制发酵温度是确保啤酒品质和口感的关键环节。 在Fendi Club啤酒的发酵过程中&#xff0c;温度控制尤…

c#cad 创建-正方形(四)

运行环境 vs2022 c# cad2016 调试成功 一、程序说明 创建一个正方形&#xff0c;并将其添加到当前活动文档的模型空间中。 程序首先获取当前活动文档和数据库&#xff0c;并创建一个编辑器对象。 然后&#xff0c;使用事务开始创建正方形的操作。获取模型空间的块表记录&a…

Vue3大事件项目(ing)

文章目录 核心内容1.大事件项目介绍2.大事件项目创建3.Eslint配置代码风格4.配置代码检查工作流问题: pnpm lint是全量检查,耗时问题,历史问题 5.目录调整6.vue-router4 路由代码解析7.引入 Element Plus 组件库8.Pinia 构建仓库 和 持久化9.Pinia 仓库统一管理 核心内容 Vue3…

C# 夺冠,微软.NET前途光明!

本文以C# 摘得 “2023 年度编程语言“称号为背景&#xff0c;介绍.NET的历史、生态及发展势头&#xff0c;该文章是本人C#专栏的第一篇文章。 这里写目录标题 1.C#摘得"2023年度编程语言"奖项2.什么是.NET&#xff1f;2.1.NET简史2.2.NET是用于应用程序开发的生态系…

蓝桥杯(Web大学组)2022国赛真题:新鲜的蔬菜

主要是对flex的运用 使用 display: flex; justify-content: space-between; 以及对其中单个子元素进行操作&#xff1a;align-self: center; align-self: end; .container {display: flex;justify-content: center;flex-wrap: wrap;width: 960px;margin: 0 auto; }.ite…

YY调音台:音频后期处理

我从事影视后期处理的工作&#xff0c;主要负责音频、音效合成这块工作内容。在影视作品中&#xff0c;声音不仅仅是背景元素&#xff0c;它在叙事和创造情感氛围上发挥着至关重要的作用。我们的工作不仅要让听众听到声音&#xff0c;更要让他们通过声音感受到情感的波动和故事…

2024:AI 大冒险

2024&#xff1a;AI 大冒险 2023 年就像一场疯狂的过山车&#xff0c;现在让我们一起系好安全带&#xff0c;来预测一下 2024 年的五大惊心动魄事件吧&#xff01; 一、AI 惹祸升级 嘿&#xff0c;2024 年可要小心了&#xff01;AI 这家伙可能会变得更调皮捣蛋。人们可能会用…

Ubuntu下anaconda的常用操作

Ubuntu下anaconda的安装及常用操作 安装Anaconda 下载Anaconda&#xff1a;在Anaconda官网下载适合你系统的Anaconda安装包&#xff08;通常是64位的Linux版本&#xff09;。 安装Anaconda 在终端中导航到你下载Anaconda安装包的目录&#xff0c;然后运行以下命令安装Anacon…

【go】结构体切片去重

场景 自定义结构体切片&#xff0c;去除切片中的重复元素&#xff08;所有值完全相同&#xff09; 代码 // 自定义struct去重 type AssetAppIntranets struct {ID string json:"id,omitempty"AppID string json:"app_id,omitempty"IP …

git 使用 (备查)

git忽略清单 添加忽略清单 SSH免登录 ssh协议可以实现免登录操作&#xff0c;身份验证通过密钥实现。 跨团队写作 解决冲突 拉取 克隆 拉取最新版本 推送 远程仓库别名 直接使用git push推送 多人协作开发 分支命令 合并分支命令在主分支使用&#xff0c;将develop分支合并到…

MIT-Missing Semester_Topic 6:Version Control (Git) 练习题

文章目录 练习一练习二练习三练习四练习五练习六练习七 本 Topic 的 MIT 讲解网页&#xff08;练习题未给解答&#xff09; 练习一 若还没有 Git 的相关经验&#xff0c;阅读 Pro Git 的前几章或诸如 Learn Git Branching 的相关教程&#xff0c;并在学习的同时从 Git 的数据模…

大型装备制造企业案例分享——通过CRM系统管理全球业务

本期&#xff0c;小Z为大家带来的CRM管理系统客户案例是某大型装备制造企业运用Zoho CRM管理全球业务的过程分享。该企业是创业板上市公司&#xff0c;业务遍及100多个国家和地区&#xff0c;合作伙伴超百位&#xff0c;拥有覆盖全球的销售和服务网络。截止目前&#xff0c;相继…

7.electron之渲染线程发送事件,主进程监听事件

如果可以实现记得点赞分享&#xff0c;谢谢老铁&#xff5e; Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 Electron 将 Chromium 和 Node.js 嵌入到了一个二进制文件中&#xff0c;因此它允许你仅需一个代码仓库&#xff0c;就可以撰写支持 Windows、…

【漏洞复现】电信网关配置管理系统SQL注入漏洞

Nx01 产品简介 电信网关配置管理系统是一个用于管理和配置电信网络中网关设备的软件系统。它可以帮助网络管理员实现对网关设备的远程监控、配置、升级和故障排除等功能&#xff0c;从而确保网络的正常运行和高效性能。 Nx02 漏洞描述 电信网关配置管理系统存在SQL注入漏洞,攻…

jmeter二次开发函数-生成身份证号

代码参考这个 java 随机生成身份证代码 Java的身份证号码工具类 pom文件添加 <dependency><groupId>org.apache.jmeter</groupId><artifactId>ApacheJMeter_core</artifactId><version>5.4.1</version></dependency><d…

annaconda如何切换当前python环境

annaconda默认的python环境是base&#xff1a; 把各种项目的依赖都安装到base环境中不是一个好的习惯&#xff0c;比如说我们做爬虫项目和做自动化测试项目等所需要的依赖是不一样的&#xff0c;我们可以将为每个项目创建自己的环境&#xff0c;在各自的环境中安装自己的依赖&…

Android 11 访问 Android/data/或者getExternalCacheDir() 非root方式

前言&#xff1a; 需求要求安装三方应用ExternalCacheDir()下载下来的apk文件。 getExternalCacheDir() : /storage/emulated/0/Android/data/com../cache/ 获取访问权限 如果手机安卓版本为Android10的时候,可以在AndroidManifest.xml中添加下列代码 android:requestLegacyExt…

Leetcode 30天高效刷数据结构和算法 Day1 两数之和 —— 无序数组

两数之和 —— 无序数组 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现…

JAVA原型模式详解

原型模式 1 原型模式介绍 定义: 原型模式(Prototype Design Pattern)用一个已经创建的实例作为原型&#xff0c;通过复制该原型对象来创建一个和原型对象相同的新对象。 西游记中的孙悟空 拔毛变小猴,孙悟空这种根据自己的形状复制出多个身外化身的技巧,在面向对象软件设计领…

【Transformer-Hugging Face 06/10】 数据预处理实例

目录 一、说明二、自然语言处理2.1 Pad2.2 截断2.3 构建张量 三、TensorFlow四、处理语音五、计算机视觉六、填充七、Multimodal 一、说明 在数据集上训练模型之前&#xff0c;需要将其预处理为预期的模型输入格式。无论您的数据是文本、图像还是音频&#xff0c;都需要将它们…