首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将一个数据框中的值替换为另一个数据框中的值?

如何将一个数据框中的值替换为另一个数据框中的值?
EN

Stack Overflow用户
提问于 2020-07-19 09:25:44
回答 1查看 25关注 0票数 0

对于非常简单的问题,很抱歉,我有一个包含两列的参考表: code和description:

代码语言:javascript
复制
gear = structure(list(`Gear Code` = c(101, 102, 103, 104, 105, 106, 
107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 
120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 
133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 
146, 147, 148, 149, 150), `Gear Description` = c("NORPAC (North Pacific Standard Net)", 
"Plankton Net (Muslin)", "Plankton Net (Silk)", "Marutoku B Net", 
"JUDAY Net - OLD DO NOT USE", "JUDAY Oceanic Model (JOM)", "Ring Net", 
"Gulf IA Sampler", "Gulf III Sampler", "Gulf II Sampler", "Rectangular Midwater Trawl (RMT)", 
"Plankton Net (type not specified)", "Be' Multiple Plankton Sampler (MPS)", 
"Bathypelagic Plankton Sampler (BPS)", "Indian Ocean Standard Net (IOSN)", 
"Clarke-Bumpus Sampler", "Neuston Net", "Bongo Net", "Water Pump (type not specified)", 
"MOCNESS (Multiple Opening and Closing Nets and Environment Sampling System)", 
"BR 80/113 Net", "CPR (Longhurst-Hardy)", "Isaacs-Kidd Midwater Trawl (IKMT)", 
"Midwater Trawl", "ORI-C Net", "Kitahara(n) Net", "Bottle (type not specified)", 
"Bottle (Niskin)", "Marutoku Net (not specified)", "Bottle (Go-Flo)", 
"CalCOFI Net", "WP-2 (UNESCO Working Party 2)", "Nansen Surface Net", 
"Heron Tranter Net", "N70 - Discovery pattern N70 net", "Organdie Net", 
"75M25 Net", "TSK (model not specified)", "Hensen Net", "Beam Trawl", 
"Marushi Net", "Foredeck Net", "Motoda Horizontal Net (MTD)", 
"Van Dorn Bottle", "General Oceanics Model 2030", "POFI Net", 
"Micro Net (not specified)", "Open Net (not specified)", "Closing Net (not specified)", 
"High Speed Net (type not specified)")), row.names = c(NA, -50L
), class = c("tbl_df", "tbl", "data.frame"))

然后,我有另一个包含以下列的数据帧:

代码语言:javascript
复制
df_column = c("111", "111", "112", "112", "139", "141", "140, "143", "102", 
"112", "115", "117")

我想用齿轮数据框中的描述替换df_column中的每个数字。

我知道我可以使用left_join函数来匹配两个数据帧,但它会增加一个额外的列,我希望避免这种情况

EN

回答 1

Stack Overflow用户

发布于 2020-07-19 09:29:49

如果您联接数据帧,则可以在以后不需要这些列时将其删除。不管怎样,因为df_column是一个向量,所以你可以试试match,它一开始就不会添加额外的列。

代码语言:javascript
复制
data.frame(description=gear$`Gear Description`[match(df_column,gear$`Gear Code`)])

#                         description
#1   Rectangular Midwater Trawl (RMT)
#2   Rectangular Midwater Trawl (RMT)
#3  Plankton Net (type not specified)
#4  Plankton Net (type not specified)
#5                         Hensen Net
#6                        Marushi Net
#7                         Beam Trawl
#8        Motoda Horizontal Net (MTD)
#9              Plankton Net (Muslin)
#10 Plankton Net (type not specified)
#11  Indian Ocean Standard Net (IOSN)
#12                       Neuston Net
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62975388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档