我是Excel的忠实用户,正在学习R和易于使用的R软件包dplyr.我经常使用Excel的索引(…,match(…)用于从列中拉入(查找)目标值的公式组合.我将如何在R中并使用dplyr执行相同的操作,如下面的Excel插图所示?在R中,我试图复制标记为"Match"的G列,该列的公式显示在其右侧高亮显示的黄色列中,并标记为"Match column Formula".

我正在使用Excel和配套的R代码来显示一系列分步计算,以防G列看起来很复杂!

enter image description here

在此示例中,用于再现起始数据帧的代码:

myData <- 
  data.frame(
    Element = c("A","A","C","A","B","B"),
    Code1 = c(0,0,0,0,1,1),
    Code2 = c(1,2,1,3,1,2),
    Code3 = c(0,0,0,0,1,2),
    Code4 = c(0,0,0,0,1.1,1.2)
  )

推荐答案

Base R有一个match函数,其工作原理与Excel类似.

myData$Match <- with(myData, Code4[match(Code2, Code3)] * !Code1)

myData
#-----
  Element Code1 Code2 Code3 Code4 Match
1       A     0     1     0   0.0   1.1
2       A     0     2     0   0.0   1.2
3       C     0     1     0   0.0   1.1
4       A     0     3     0   0.0    NA
5       B     1     1     1   1.1   0.0
6       B     1     2     2   1.2   0.0

同样的 idea ,但使用dplyr

myData %>%
  mutate(Match = Code4[match(Code2, Code3)] * !Code1)

R相关问答推荐

pdf Quarto中的中心美人鱼

使用格式化程序自定义hc_tooltip以添加textColor删除了我的标记并try 将它们带回失败

如何使用geom_sf在边界显示两种 colored颜色 ?

ggplot 2中的地块底图(basemaps_gglayer()不起作用)

r中的stat_difference函数不起作用

抖动点与嵌套类别变量箱形图的位置不对齐

多重RHS固定估计

用值序列对行进行子集化,并标识序列开始的列

gganimate在使用shadow_mark选项时不保留所有过go 的标记

如何根据嵌套元素的名称高效而优雅地确定它属于哪个列表?

将一个字符串向量调整为与其他字符串向量完全相同的大小

从服务器在Shiny中一起渲染图标和文本

当我们有多个反斜杠和/特殊字符时使用Gsubing

Geom_Hline将不会出现,而它以前出现了

使用gt_summary是否有一种方法来限制每个变量集进行配对比较?

如何阻止围堵地理密度图?

如何在使用Alpha时让geom_curve在箭头中显示恒定透明度

基于R中的辅助向量中的值有条件地连接向量中的字符串

网络抓取NBA.com

如何编辑被动式数据表?