如何比较R数据帧中的两列,并根据比较结果在第三列返回0或1?

如何比较R数据帧中的两列,并根据比较结果在第三列返回0或1?,r,R,我有一个数据框,有两列(都是日期)和一百万行。我必须比较第三列中的日期和返回值。i、 e如果A列中的日期大于B列中的日期,则在C列中返回1 提前感谢:) 或 在第二种方式中,您可以在base中更改为dt[,C:=1][A: DF$C <- as.numeric(DF$A > DF$B) 您尝试过什么?这很容易在R中实现,只要您的数据设置正确,您能显示您的数据吗?DF$C=DF$a>DF$B?是的,我的日期是使用as.date命令正确设置的。我以前从未做过相应的比较和返回值。@Mic

我有一个数据框,有两列(都是日期)和一百万行。我必须比较第三列中的日期和返回值。i、 e如果A列中的日期大于B列中的日期,则在C列中返回1

提前感谢:)

在第二种方式中,您可以在
base
中更改为
dt[,C:=1][A:

DF$C <- as.numeric(DF$A > DF$B)

您尝试过什么?这很容易在R中实现,只要您的数据设置正确,您能显示您的数据吗?
DF$C=DF$a>DF$B
?是的,我的日期是使用as.date命令正确设置的。我以前从未做过相应的比较和返回值。@MichaelChirico单凭这一点会返回1还是零?我会尝试一下但是我的rstudio目前正在一个大型计算机上运行一个任务dataframe@stef1您可以启动一个新的Rstudio会话,并在示例数据上进行尝试。这些都是非常迂回的方法,您可以直接在R中完成一些事情。我知道这是迂回的。但是如果数据仅包含百万行,
data.table
与此相结合或许可以。在这个问题上还有其他方法来处理超大数据吗?我说这是迂回的,因为
DF$A>DF$B
的结果非常接近期望的答案,似乎没有必要在上面添加额外的步骤,或者通过
ifelse
以.numeric(A>B)
的形式发送。
dt[, C := ifelse(A > B, 1, 0)]
dt[, C := 0][A > B, C := 1]
DF$C <- as.numeric(DF$A > DF$B)
DF %>% 
  mutate(C = as.numeric(A > B))