首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >当某一列中的某个值出现时,新列中出现一个新值

当某一列中的某个值出现时,新列中出现一个新值
EN

Stack Overflow用户
提问于 2019-10-10 06:58:24
回答 3查看 35关注 0票数 1

根据一列中的值,我想要一个新列中的值。当访问1时,我希望在"new“列中使用7,当访问2时,我希望在"new”列中使用8,当访问3时,我希望在"new“列中使用9。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
id <- rep(1001:1003, each=3)
visit <- rep(1:3,3)
trt <- rep(c("A","B","C"),3)
df <- data.frame(id,visit,trt)

    id visit  trt
1 1001     1   A
2 1001     2   B
3 1001     3   C
4 1002     1   A
5 1002     2   B
6 1002     3   C
7 1003     1   A
8 1003     2   B
9 1003     3   C

I want it to look like:
    id  visit trt new
1 1001     1   A   7
2 1001     2   B   8
3 1001     3   C   9
4 1002     1   A   7
5 1002     2   B   8
6 1002     3   C   9
7 1003     1   A   7
8 1003     2   B   8
9 1003     3   C   9

我得到了他的支持,但现在我不知道如何继续下去。有没有人有指导意见?谢谢!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df %>%mutate(new=(visit==2))

    id visit trt   new
1 1001     1   A FALSE
2 1001     2   B  TRUE
3 1001     3   C FALSE
4 1002     1   A FALSE
5 1002     2   B  TRUE
6 1002     3   C FALSE
7 1003     1   A FALSE
8 1003     2   B  TRUE
9 1003     3   C FALSE
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-10-10 07:06:02

如果您正在寻找适用于一般情况的答案:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
require(dplyr)

df = df %>% 
  dplyr::mutate(new = case_when(.$visit == 1 ~ 7,
                                .$visit == 2 ~ 8,
                                .$visit == 3 ~ 9))

如果这是你要找的,请告诉我。

票数 2
EN

Stack Overflow用户

发布于 2019-10-10 07:03:53

看起来您只需要在行visit中添加6

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> df %>% mutate(new=visit+6)
    id visit trt new
1 1001     1   A   7
2 1001     2   B   8
3 1001     3   C   9
4 1002     1   A   7
5 1002     2   B   8
6 1002     3   C   9
7 1003     1   A   7
8 1003     2   B   8
9 1003     3   C   9
票数 2
EN

Stack Overflow用户

发布于 2019-10-10 07:01:27

如果您的数字是1、2、3,并且顺序如图所示,则只需在visit列中添加6即可

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df$new <- df$visit + 6

如果找不到任何关系来更新值,可以使用case_when

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(dplyr)
df %>%
  mutate(new  =case_when(visit == 1 ~ 7, 
                         visit == 2 ~ 8, 
                         visit == 3 ~9, 
                         TRUE ~NA_real_))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58317149

复制
相关文章
删除列中的 NULL 值
今天接到一个群友的需求,有一张表的数据如图 1,他希望能通过 SQL 查询出图 2 的结果。
白日梦想家
2020/07/20
9.9K0
删除列中的 NULL 值
获取GridView中的某列值
    protected void GridView1_RowEditing(object sen
Java架构师必看
2021/03/22
10.2K0
使用EXCLE表格,有相同列,取某一列的值
如图,我有两列MAC地址表,然后需要把F列的值取值到D列,可以使用公式:=VLOOKUP(A1,$E$1:$F$44,2,0)进行处理数据。A1代表以哪一列为基础取值参考,$E$1:$F$44代表查找对比范围。
Tacc
2022/01/11
4.4K0
使用EXCLE表格,有相同列,取某一列的值
如何使用Excel将某几列有值的标题显示到新列中
如果我们有好几列有内容,而我们希望在新列中将有内容的列的标题显示出来,那么我们怎么做呢?
繁华是客
2023/03/03
11.4K0
Pandas 查找,丢弃列值唯一的列
数据清洗很重要,本文演示如何使用 Python Pandas 来查找和丢弃 DataFrame 中列值唯一的列,简言之,就是某列的数值除空值外,全都是一样的,比如:全0,全1,或者全部都是一样的字符串如:已支付,已支付,已支付…
萝 卜
2022/05/12
5.7K0
Pandas 查找,丢弃列值唯一的列
Mysql与Oracle中修改列的默认值
背景: 业务发展需要,需要复用历史的表,并且通过表里面原来一个未使用的字段来区分不同的业务。 于是想到通过default来修改列的默认值: alter table A modify column biz default 'old' comment '业务标识 old-老业务, new-新业务' 现象: 上线几天之后,业务反馈旧业务的相关数据查询不到了。找后台运维查生产数据库,发现历史数据的biz字段还是null 原因: 自己在本地mysql数据库试了下,好像的确是default没法修改历史数据为null
SecondWorld
2021/09/08
13.2K0
Django ORM 查询表中某列字段值
方式一获取到的是一个QuerySet,内容是键值对构成的,键为表的列名,值为对应的每个值。
BigYoung小站
2020/05/04
3.7K0
ORACLE列值合併
在SQL Server中合併列值能够使用For Xml Path,在Oracle中則能够使用wm_concat 或 ListAgg。
全栈程序员站长
2022/07/13
1.1K0
Excel公式技巧71:查找一列中有多少个值出现在另一列中
有时候,我们想要知道某列中有多少个值同时又出现在另一列中,例如下图1所示,列B中有一系列值,列D中有一系列值,哪些值既出现有列B中又出现在列D中。因为数据较少,不难看出,在列B中仅有2个值出现在列D中,即“完美Excel”和“Office”。
fanjy
2020/12/08
3.4K0
Excel公式技巧71:查找一列中有多少个值出现在另一列中
(3)合并列值与分拆列值
在SQL中分拆列值和合并列值老生常谈了,从网上搜刮了一下并记录下来,以便不时之需 :)
跟着阿笨一起玩NET
2018/09/18
1.2K0
(3)合并列值与分拆列值
【Python】基于某些列删除数据框中的重复值
Python按照某些列去重,可用drop_duplicates函数轻松处理。本文致力用简洁的语言介绍该函数。
阿黎逸阳
2020/09/08
20.7K0
【Python】基于某些列删除数据框中的重复值
js中如何判断数组中包含某个特定的值_js数组是否包含某个值
array.includes(searchElement[, fromIndex])
全栈程序员站长
2022/09/27
18.6K0
用过Excel,就会获取pandas数据框架中的值、行和列
至此,我们已经学习了使用Python pandas来输入/输出(即读取和保存文件)数据,现在,我们转向更深入的部分。
fanjy
2021/11/29
19.3K0
用过Excel,就会获取pandas数据框架中的值、行和列
【Python】基于多列组合删除数据框中的重复值
最近公司在做关联图谱的项目,想挖掘团伙犯罪。在准备关系数据时需要根据两列组合删除数据框中的重复值,两列中元素的顺序可能是相反的。
阿黎逸阳
2020/09/08
14.8K0
Pandas中求某一列中每个列表的平均值
前几天在Python最强王者交流群【冫马讠成】问了一道Pandas处理的问题,如下图所示。
前端皮皮
2022/08/17
4.9K0
Pandas中求某一列中每个列表的平均值
关于mysql给列加索引这个列值中有null的情况
在需求中由于要批量查数据,且表中数据量挺大(2300万条记录) 且查询条件的这两个字段没有加索引,为了增加查询速度,现在需要去为这两个字段添加索引。 刚开始加索引想到的问题:
袁新栋-jeff.yuan
2020/08/26
4.3K0
Windows - Hash散列值抓取方法
LM Hash(LAN Manager Hash)其本质是 DES 加密。在 Windows 2008 及开始之后默认禁用的是 LM Hash。
渗透攻击红队
2020/11/25
1.9K0
Windows - Hash散列值抓取方法
用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。
数据库中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。
全栈程序员站长
2022/07/09
1.7K0
Numpy中找出array中最大值所对应的行和列
Python特别灵活,肯定方法不止一种,这里介绍一种我觉得比较简单的方法。 如下图,使用x == np.max(x) 获得一个掩模矩阵,然后使用where方法即可返回最大值对应的行和列。 where返回一个长度为2的元组,第一个元素保存的是行号,第二个元素保存的是列号。
卡尔曼和玻尔兹曼谁曼
2019/01/22
6.5K0
Numpy中找出array中最大值所对应的行和列
点击加载更多

相似问题

熊猫--创建一个新列,其值在旧列中的值x每次出现时都会增加。

13

添加多个列值,对应于新列中的某个特定列值

25

当新短语出现时添加null列np数组

12

如果某个列没有值,则创建一个新列并在该列中添加该值。

24

如何规范新列中的列值?

111
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文