R语言 实现将factor转换成numeric方法

方法1:

such as : x <- factor(c(3,4,5,1))
as.numeric(x)
[1]2 3 4 1

最好是这样:

as.numeric(levels(x)[x])
[1] 3 4 5 1

方法2:

as.numeric(as.character()) 

该方法最好!

方法3:

read.table时候就读成数值型,R读的时候默认"NA"是missing,如果你的数据不是用NA来表示missing,那么这一列就读成string或者factor了

补充:R语言中因子(factor)转换成数值型(numeric)的问题

一直觉得只要是数字,不管是什么类型的,都可以通过as.numeric()函数转换为对应的numeric类型的数字,例如

x<-“123”,x为character类型,而as.numeric(x)则为numeric类型的123。但是因子(factor)类型却不一样。

a<-factor(c(100,200,300,301,302,400,10)),它们的值分别为100 200 300 301 302 400 10,然而

as.numeric(a)对应的值并非100 200 300 301 302 400 10,而是2 3 4 5 6 7 1。

因子(factor)转换成数值型(numeric)的规则是这样的:

一共有n个数,那么转换后的数字就会在1——n中取值,数字最小的取一,次小的取二,以此类推。

那么如何让因子(factor)类型里的数值转换对应的数值型呢?

1. mean(as.numeric(as.character(factorname)))

2. mean(as.numeric(levels(factorname)[factorname]))

以上代码都可以实现将因子(factor)类型里的数值转换对应的数值型,思路都是先转换成字符型然后再转换成数值型。

(0)

相关推荐

  • R语言数据类型深入详解

    R语言用来存储数据的对象包括: 向量, 因子, 数组, 矩阵, 数据框, 时间序列(ts)以及列表 意义介绍 1. 向量(一维数据): 只能存放同一类型的数据 语法: c(data1, data2, ...),访问的时候下标从1开始(和Matlab相同);向量里面只能存放相同类型的数据. > x <- c(1,5,8,9,1,2,5) > x [1] 1 5 8 9 1 2 5 > y <- c(1,"zhao") # 这里面有integer和字符串, 整

  • R语言 实现list类型数据转换

    例如: > a=list(c('232','34'),c('good','bad'),c(1,5)) > a [[1]] [1] "232" "34" [[2]] [1] "good" "bad" [[3]] [1] 1 5 > names(a)=c('d','w','j') > a $d [1] "232" "34" $w [1] "good"

  • R语言基本对象类型知识点详解

    基本向量 包含单类型对象(例如整数,浮点数,复数,文本,逻辑值或者原始型数据)的向量 复合对象 包含一些列基本向量的数据结构,例如列表,配对列表,``S4对象或者环境. 这些对象的特性各不相同,但它们都包含一系列命名的对象 特殊对象 在R编程中服务于特定目的的对象,例如any,NULL和...等. 这类对象在特定的环境中具有十分重要的意义,但是无法创建一个属于该类型的对象 R语言 R代码,其被执行后可以返回其他对象 函数 R的引擎; 其以参数作为输入,同时返回一些对象作为输出 有时候,函数会修改

  • R语言 实现将factor转换成numeric方法

    方法1: such as : x <- factor(c(3,4,5,1)) as.numeric(x) [1]2 3 4 1 最好是这样: as.numeric(levels(x)[x]) [1] 3 4 5 1 方法2: as.numeric(as.character()) 该方法最好! 方法3: read.table时候就读成数值型,R读的时候默认"NA"是missing,如果你的数据不是用NA来表示missing,那么这一列就读成string或者factor了 补充:R语

  • C语言 字符串首字母转换成大写简单实例

    C语言 字符串首字母转换成大写简单实例 举例: 输入:this is a book 返回:This Is A Book #include<stdio.h> #include<stdlib.h> #include<string.h> int main() { char input[]="this is a book"; char output[256]={'\0'}; int i,len; len=strlen(input); printf("

  • R语言将变量分组的3种方法实例(含cut函数说明)

    目录 前言 方法一:直接对分组变量进行赋值 方法二:使用within函数对变量进行分组 方法三:采用cut函数 总结 前言 在数据处理的过程中,我们有时候需要将连续的数值数据转换为类别数据,比如将收入分成高.中和低三组,将学生成绩分为优.良.中.及格和不及格五组. 本来将基于R语言,采用三种方法来实现:第一种是对变量直接进行重新赋值,第二种是使用within函数对语句进行组织,第三种是cut函数. 首先我们定义一个数据框,这个数据框包括学生姓名和数学成绩两个变量. #定义数据框 mathScor

  • R语言-实现将向量转换成一个字符串

    将向量a,b装换成一个字符串,其中: a=c(1,2,3,4) b=c(2,3,4,5) 为了将其转化成一个字符串可以通过引入包stringr,使用str_c实现,使用paste也一样可以达到目的,如下: library(stringr) a_b=str_c(a,b,collapse='') paste(a,b,sep='') 输出为: [1] "12233445" 在实际的数据处理中看可以用来给数据框建联合索引,比如数据框中需要用到的索引列联接成一列,则在实际中可以方便很多,避免很多

  • R语言导入导出数据的几种方法汇总

    导出: 对于某一数据集导出文件的方法 导出例子:write.csv(data_1,file = "d:/1111111111.csv") 其中data_1是你的数据集,file是你的存储路径和要存储的名字 导入: 1  使用键盘输入数据 (1) 创建一个空数据框(或矩阵),其中变量名和变量的模式需与理想中的最终数据集一致: (2)针对这个数据对象调用文本编辑器,输入你的数据,并将结果保存回此数据对象中. 在下例中,你将创建一个名为mydata的数据框,它含有三个变量:age(数值型).

  • C#将Word转换成PDF方法汇总(基于Office和WPS)

    有时候,我们需要在线上预览word文档,当然我们可以用NPOI抽出Word中的文字和表格,然后显示到网页上面,但是这样会丢失掉Word中原有的格式和图片.一个比较好的办法就是将word转换成pdf,然后让客户预览,下面来看一下基于Office和WPS的两种解决方案. 一.基于Office的解决方案 正如标题所说,基于Office就是要求服务器上面要安装的有Office.我们通过C#代码来调用COM接口,实现将Word转换成PDF.下面来看一下具体实现,首先引用Microsoft.Office.I

  • R语言绘图技巧导出高清图方法

    上一次小仙同学分享了 facet violin plot的画法,最后还卖了个关子,给大家留了个悬念.科研文章的插图通常要求比较高,不仅要精准地展示出数据,选对图表类型,还需要简洁优美(?翻译成人话就是,同样的数据能不能多“卖”几分,就看图够不够高大上啦).小仙同学在画图的时候遇到的一个问题就是,RStudio直接导出的图,怎么这么不清晰?为什么教程里别人的图都那么清晰呢?这时候可能就有同学就会说,这还不简单,直接导出矢量图不就可以了吗? 我们来看下,RStudio可以导出的图片格式有这么几种,小

  • 易语言将下载地址解析转换成迅雷快车旋风的方法

    Base64解码 .版本 2 .程序集 程序集1 .子程序 Base64解码, 字节集, 公开 .参数 原文, 字节集 .局部变量 码表, 字节集 .局部变量 位置码表, 字节型, , "256" .局部变量 结果, 字节集 .局部变量 原文长度, 整数型 .局部变量 补码, 整数型 .局部变量 i, 整数型 .局部变量 四字节数据, 字节型, , "4" .局部变量 j, 整数型 原文长度 = 取字节集长度 (原文) .如果真 (原文长度 = 0) 返回 ({ }

  • 易语言将日期时间转换成纯数字格式的代码

    将时间转换到纯数字格式的代码 .版本 2 .程序集 窗口程序集1 .程序集变量 年, 文本型 .程序集变量 月, 文本型 .程序集变量 日, 文本型 .程序集变量 时, 文本型 .程序集变量 分, 文本型 .程序集变量 秒, 文本型 .子程序 获取时间 年 = 到文本 (取年份 (取现行时间 ())) .判断开始 (取月份 (取现行时间 ()) < 10) 月 = 到文本 ("0") + 到文本 (取月份 (取现行时间 ())) .默认 月 = 到文本 (取月份 (取现行时间 (

  • R语言中的五种常用统计分析方法

    1.分组分析aggregation 根据分组字段,将分析对象划分为不同的部分,以进行对比分析各组之间差异性的一种分析方法. 常用统计指标: 计数 length 求和 sum 平均值 mean 标准差 var 方差 sd 分组统计函数 aggregate(分组表达式,data=需要分组的数据框,function=统计函数) 参数说明 formula:分组表达式,格式:统计列~分组列1+分组列2+... data=需要分组的数据框 function:统计函数 aggregate(name ~ cla

随机推荐