Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在包含年份的另一列的基础上创建包含期间的新列

在包含年份的另一列的基础上创建包含期间的新列
EN

Stack Overflow用户
提问于 2021-04-15 20:11:20
回答 3查看 40关注 0票数 1

我正在尝试在我的data.frame中基于另一个列创建一个新的列。

我的数据框名为dat.cp2,其中的一列包含1990-2017年的某个年份。在这里,您可以看到我的数据的外观。"ar“列表示一年。

我需要创建一个名为"TB“的新列,其中包含句点。例如,第一个时期是1990-1996年,我希望这段时期叫做“TB1”。1997-2003是"TB2“,以此类推。因此,对于1995年出生的人,新的列显示为"TB1”。

我试过了:

代码语言:javascript
运行
AI代码解释
复制
dat.cp2 %>% mutate(TB =
                     case_when(ar <=1996 ~ "TB1",
                               ar >=1997&<=2003 ~ "TB2",
                               ar >=2004&<=2010 ~ "TB3",
                               ar >=2011 ~ "TB4")

但是我得到了错误信息:

代码语言:javascript
运行
AI代码解释
复制
Error: unexpected '<=' in:
"                     case_when(ar <=1996 ~ "TB1",
                               ar >=1997&<="

我试着寻找答案,但什么也找不到。有人能帮上忙吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-04-15 20:20:17

语法&<=在某些其他语言中可能是可接受的,但在R中,语法在两个表达式中都应该有由&连接的ar

代码语言:javascript
运行
AI代码解释
复制
library(dplyr)
dat.cp2 %>% 
         mutate(TB =
                 case_when(ar <=1996 ~ "TB1",
                           ar >=1997 & ar <=2003 ~ "TB2",
                           ar >=2004 & ar <=2010 ~ "TB3",
                           ar >=2011 ~ "TB4"))

注意:简化的方法有很多。但是,这只是为了显示OP的代码错误所在

票数 2
EN

Stack Overflow用户

发布于 2021-04-15 20:33:40

您实际上并不需要&,因为您是按顺序工作的,而且您还可以使用TRUE来完成

代码语言:javascript
运行
AI代码解释
复制
dat.cp2 %>% 
  mutate(
    TB = case_when(ar <= 1996 ~ 'TB1',
                   ar <= 2003 ~ 'TB2',
                   ar <= 2010 ~ 'TB3',
                   TRUE ~ 'TB4')
  )
票数 2
EN

Stack Overflow用户

发布于 2021-04-15 20:25:02

您还可以执行以下操作:

代码语言:javascript
运行
AI代码解释
复制
dat.cp2 %>%
   mutate(TB = cut(ar, breaks = c(1989,1996, 2003, 2010, 2017),
                       labels = c("TB1", "TB2","TB3","TB4")))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67115435

复制
相关文章
包含列的索引:SQL Server索引进阶 Level 5
作者David Durant,2011/07/13 关于系列 本文属于Stairway系列:Stairway to SQL Server Indexes 索引是数据库设计的基础,并告诉开发人员使用数据库关于设计者的意图。 不幸的是,当性能问题出现时,索引往往被添加为事后考虑。 这里最后是一个简单的系列文章,应该使他们快速地使任何数据库专业人员“快速”。 ---- 前面的级别引入了聚簇和非聚簇索引,突出了以下各个方面: 表中每一行的索引总是有一个条目(我们注意到这个规则的一个例外将在后面的级别中进行讨论)。
Woodson
2018/07/19
2.5K0
select count(*)、count(1)、count(主键列)和count(包含空值的列)有何区别?
最直接的方法,我想就是通过10053事件,来看下不同SQL对应的执行计划和资源消耗等情况,进而看看是否有些信息可以为我们所用。
bisal
2019/01/29
3.5K0
[WPF 自定义控件]创建包含CheckBox的ListBoxItem
不过它用起来不怎么样,与其这样还不如参考UWP的ListView实现,而且动画效果也很好看:
dino.c
2020/02/21
3K0
[WPF 自定义控件]创建包含CheckBox的ListBoxItem
SQL Server 索引和表体系结构(包含列索引)
包含列索引 概述 包含列索引也是非聚集索引,索引结构跟聚集索引结构是一样,有一点不同的地方就是包含列索引的非键列只存储在叶子节点;包含列索引的列分为键列和非键列,所谓的非键列就是INCLUDE中包含的列,至少需要有一个键列,且键列和非键列不允许重复,非键列最多允许1023列(也就是表的最多列-1),由于索引键列(不包括非键)必须遵守现有索引大小的限制(最大键列数为 16,总索引键大小为 900 字节)的要求所以引进了包含列索引。 正文 创建包含列索引 ----创建表 CREATE TABLE [dbo].
逸鹏
2018/04/11
1.5K0
Innodb主键包含全部列的情况下,如何组织物理页
使用工具查看叶子节点结构,下面是部分截图,剩下的部分都是 一样的 level 为0的数据页。
执生
2021/01/06
6010
在 Angular 应用中创建包含组件
包含组件就是指可以包含其它组件的组件, 以 Bootstrap 的卡片 (Card) 为例, 它包含页眉 (header) 、 主体 (body) 和 页脚 (footer) , 如下图所示:
beginor
2020/08/07
5K0
在 Angular 应用中创建包含组件
怎么直接把一列的部分数据换成另一列里的数据?
小勤:这个我知道啊。但是,能不能不增加列,直接转换吗?比如用函数Table.TranformColumns?
大海Power
2021/08/30
2.1K0
问与答112:如何查找一列中的内容是否在另一列中并将找到的字符添加颜色?
Q:我在列D的单元格中存放着一些数据,每个单元格中的多个数据使用换行分开,列E是对列D中数据的相应描述,我需要在列E的单元格中查找是否存在列D中的数据,并将找到的数据标上颜色,如下图1所示。
fanjy
2021/04/21
7.7K0
问与答112:如何查找一列中的内容是否在另一列中并将找到的字符添加颜色?
在Excel里,如何查找A列的数据是否在D列到G列里
Excel数据查找,相信多数的同学都不陌生,我们经常会使用vlookup等各类查找函数,进行数据的匹配查找。
matinal
2023/10/13
3240
在Excel里,如何查找A列的数据是否在D列到G列里
MySQL 排错-解决MySQL非聚合列未包含在GROUP BY子句报错问题
SELECT id, name, count(*) AS cnt FROM case_table GROUP BY name
授客
2019/09/29
1.7K0
SQL如何将一个列中值内的逗号分割成另一列
例如某个列是这样的: 7890 – 20th Ave E Apt 2A, Seattle, VA 9012 W Capital Way, Tacoma, CA 5678 Old Redmond Rd, Fletcher, OK 3456 Coventry House Miner Rd, Richmond, TX
繁华是客
2023/03/03
2K0
在 HTML 中包含资源的新思路[每日前端夜话0xC3]
注意:这篇文章描述了一种我们仍需要测其试性能影响的实验技术。它可能最终会成为一种有用的工具,也有可能成为不被推荐的做法。无论哪种方式,它对我们来说很有吸引力!
疯狂的技术宅
2019/09/25
3.4K0
在 HTML 中包含资源的新思路[每日前端夜话0xC3]
分离链接的散列散列代码实现
散列 散列为一种用于以常数平均时间执行插入,删除和查找的技术。一般的实现方法是使通过数据的关键字可以计算出该数据所在散列中的位置,类似于Python中的字典。关于散列需要解决以下问题: 散列的关键字如何映射为一个数(索引)——散列函数 当两个关键字的散列函数结果相同时,如何解决——冲突 散列函数 散列函数为关键字->索引的函数,常用的关键字为字符串,则需要一个字符串->整数的映射关系,常见的三种散列函数为: ASCII码累加(简单) 计算前三个字符的加权和$\sum key[i] * 27^{i}$ (不太
月见樽
2018/04/27
1.6K0
创建包含源文件的IP-带有参数
有时候我们想参考官方的源码,但是有些IP怎么也找不到官方的源码,具体原因是什么呢?
碎碎思
2021/01/13
2.2K0
创建包含源文件的IP-带有参数
Pandas 查找,丢弃列值唯一的列
数据清洗很重要,本文演示如何使用 Python Pandas 来查找和丢弃 DataFrame 中列值唯一的列,简言之,就是某列的数值除空值外,全都是一样的,比如:全0,全1,或者全部都是一样的字符串如:已支付,已支付,已支付…
萝 卜
2022/05/12
6.2K0
Pandas 查找,丢弃列值唯一的列
mysql列的处理
示例:ALTER TABLE tb_financial MODIFY CREATE_TIME DATETIME(3) DEFAULT NULL COMMENT '录入时间';
hankleo
2020/09/16
4.1K0
Excel公式练习32: 将包含空单元格的多行多列单元格区域转换成单独的列并去掉空单元格
本次的练习是:如下图1所示,单元格区域A1:D6中是一系列数据,其中包含空单元格,现在要将它们放置到一列中,并删除空单元格,如图中所示的单元格区域G1:G13,如何使用公式实现?
fanjy
2020/02/18
2.5K0
Oracle创建新undo表空间最佳实践(包含段检查)
在处理一则ORA-600 [4194]案例时,参考MOS文档:Step by step to resolve ORA-600 4194 4193 4197 on database crash (文档 ID 1428786.1)
Alfred Zhao
2019/05/22
7430
Excel公式练习38: 求一列中的数字剔除掉另一列中的数字后剩下的数字
导语:继续研究来自于excelxor.com的案例。这个案例看似简单,然而实现起来却比较难,这里面用到的技巧值得学习。
fanjy
2020/02/26
3.6K0
点击加载更多

相似问题

创建包含3列的新列

10

创建包含4列之和的新列

17

从包含列表的列创建新列

19

如何创建包含id列哈希的新列

11

Rails创建包含列的新表

26
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档