返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >R语言中的因子类型详解
  • 699
分享到

R语言中的因子类型详解

2024-04-02 19:04:59 699人浏览 薄情痞子
摘要

一、Factor函数 #函数factor可以把一个向量编码为一个因子,其一般形式为: #factor(x,levels=sort(unique(x),na.last=TRUE),

一、Factor函数


#函数factor可以把一个向量编码为一个因子,其一般形式为:
#factor(x,levels=sort(unique(x),na.last=TRUE),labels,exculde=NA,order=FALSE)
#其中x是向量,levels是水平,可以自行指定各离散的取值,不指定时由x的不同值来表示,labels可以用来指定各水平的标签
#不指定时用各离散取值的对应字符串
 
sex<-c("M","F","M","M","F")
factor(sex)
#使用is.factor来判断对象是否为因子类型
is.factor(sex)
#使用as.factor来将对象转换为因子类型
sex.factor<-as.factor(sex)
#使用levels来取得因子中的水平
levels(sex.factor)
# [1] "F" "M"

二、tapply函数


#函数tapply()
#当我们知道5个人的性别以及5个人的身高的时候,就能计算出每个性别下的平均身高
height<-c(170,175,180,165,168)
 
tapply(height,sex.factor,mean)
# F        M 
# 171.5000 171.6667 
 
#tapply 的使用格式为tapply(x,index,fun) 其中x为对象,index为与x具有相同个数的因子类型,fun为指定的方法

三、gl()函数


#gl()函数
#gl函数能很快的产生因子,其基本用法为:gl(n,k,length=n*k,labels=1:n,order=false)
 
gl(3,5)
# [1] 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3
# Levels: 1 2 3
 
gl(3,1,15)
# [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
# Levels: 1 2 3

补充: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)类型里的数值转换对应的数值型呢?


as.numeric(as.character(factorname))
as.numeric(levels(factorname)[factorname])

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

--结束END--

本文标题: R语言中的因子类型详解

本文链接: https://lsjlt.com/news/123852.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • R语言中的因子类型详解
    一、Factor函数 #函数factor可以把一个向量编码为一个因子,其一般形式为: #factor(x,levels=sort(unique(x),na.last=TRUE),...
    99+
    2024-04-02
  • R语言因子类型的实现
    目录1.因子2.table() 函数3.tapply() 函数4.forcats 包的因子函数1.因子       &nb...
    99+
    2024-04-02
  • R语言中的因子类型有哪些
    R语言中的因子类型有哪些?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、Factor函数#函数factor可以把一个向量编码为一个因子,其一般形式为:#fac...
    99+
    2023-06-14
  • R语言中因子相关知识点详解
    因子是用于对数据进行分类并将其存储为级别的数据对象。 它们可以存储字符串和整数。 它们在具有有限数量的唯一值的列中很有用。 像“男性”,“女性”和True,False等。它们在统计建...
    99+
    2024-04-02
  • 如何理解R语言中的有序因子和无序因子
    本篇文章为大家展示了如何理解R语言中的有序因子和无序因子,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。因子是一种向量对象,它给自己的组件指定了一个离散的分类(分组),它的组件由其他等长的向量组成。R...
    99+
    2023-06-03
  • R语言因子型数值转数值型的操作
    一直觉得只要是数字,不管是什么类型的,都可以通过as.numeric()函数转换为对应的numeric类型的数字,例如 x<-“123”,x为character类型,而as.n...
    99+
    2024-04-02
  • R语言数据类型深入详解
    R语言用来存储数据的对象包括: 向量, 因子, 数组, 矩阵, 数据框, 时间序列(ts)以及列表 意义介绍 1. 向量(一维数据): 只能存放同一类型的数据 语法: c(dat...
    99+
    2024-04-02
  • R语言基本对象类型知识点详解
    基本向量 包含单类型对象(例如整数,浮点数,复数,文本,逻辑值或者原始型数据)的向量 复合对象 包含一些列基本向量的数据结构,例如列表,配对列表,``S4对象或者环境. 这些对象的特...
    99+
    2024-04-02
  • R语言中的数据类型有哪些
    这篇文章给大家介绍R语言中的数据类型有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。以上数据类型均为原子向量。单引号和双引号不做区分。R语言中TRUE和FALSE 可以简化为T和F多元素向量的生成方式方式 1:使用...
    99+
    2023-06-14
  • R语言-因子与向量的转换方式
    一、因子的特点或性质 1、因子可视为C或JAVA语言中的枚举,适用于有限状态的表示。 2、因子不可以赋枚举集合外的值,如一个因子包含male,female,则不能再赋male和fem...
    99+
    2024-04-02
  • R语言中Rcpp类型List的示例分析
    这篇文章主要为大家展示了“R语言中Rcpp类型List的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“R语言中Rcpp类型List的示例分析”这篇文章吧。当我们想将 Rcpp 中的多种类...
    99+
    2023-06-25
  • 使用R语言怎么实现因子型数值转数值型操作
    本篇文章为大家展示了使用R语言怎么实现因子型数值转数值型操作,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。因子(factor)转换成数值型(numeric)的规则是这样的:一共有n个数,那么转换后的...
    99+
    2023-06-14
  • 详解Go语言中的数据类型及类型转换
    目录1、基本数据类型2、基础数据类型转换3、基本数据类型转为字符串4、strconv的使用5、字符串转为基础类型1、基本数据类型 数据类型有很多,先研究一下基础的,例如:布尔型、数字...
    99+
    2024-04-02
  • R语言中devtools的使用详解
    今天安装r语言devtools包,尝试很多种方法也不能决解,下面这个问题是改变镜像,然后就会可以安装了(3.4.2版本) Warning in install.packages ...
    99+
    2024-04-02
  • R语言:实现因子与字符串的互转
    在导入大批量数据时,如果没有显式地指定“stringsAsFactors = FALSE”,默认会将所有的字符串转换为因子,导致数据处理速度较慢。 示例数据如下: name,ma...
    99+
    2024-04-02
  • R语言中Factor类型变量怎么用
    这篇文章给大家分享的是有关R语言中Factor类型变量怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。factor类型的创建1. factor( )> credit_rating &...
    99+
    2023-06-14
  • R语言刷题检验数据缺失类型过程详解
    目录题目解答下面考虑三种情况:1. a = 0, b = 02. a = 2, b = 03. a = 0, b = 2题目 解答 由于题目要求需要重复三次类似的操作,故首先载入...
    99+
    2024-04-02
  • R语言中aggregate 函数详解
    目录R语言中aggregate 函数001、测试数据框002、 调用函数R语言中aggregate 函数 aggregate函数是数据处理中常用到的函数,具有强大的功能。可以按照要求...
    99+
    2023-05-17
    R语言aggregate 函数 aggregate 函数
  • R语言中merge函数详解
    1、创建测试数据: name <- c('A','B','A','A','C','D') school <- c('s1','s2','s1','s1','s1','...
    99+
    2024-04-02
  • R语言数据类型有哪些
    这篇文章主要介绍了R语言数据类型有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。R语言用来存储数据的对象包括: 向量, 因子, 数组, 矩阵, 数据框, 时间序列(ts)...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作