如何比较 r 中的两列:示例


通常,您可能想要比较 R 中的两列并将比较结果写入第三列。

您可以使用以下语法轻松完成此操作:

 df$ new_col <- ifelse (df$ col1 > df$ col2 , ' A ',
ifelse (df$ col1 < df$ col2 , ' B ', ' C '))

这行代码执行以下操作:

  • 如果第 1 列大于第 2 列,则在第三列中写入“A”作为输出。
  • 否则,如果第 1 列小于第 2 列,则将“B”写为输出。
  • 否则,写“C”作为输出。

以下示例展示了如何在实践中使用此代码。

示例:比较 R 中的两列

假设我们有以下数据框,显示两支足球队在五场不同比赛中的进球数:

 #create data frame
df <- data.frame(A_points=c(1, 3, 3, 3, 5),
                 B_points=c(4, 5, 2, 3, 2))

#view data frame
df

  A_points B_points
1 1 4
2 3 5
3 3 2
4 3 3
5 5 2

我们可以使用以下代码来比较每行的进球数,并在第三列中显示比赛获胜者:

 #compare A_points and B_points and output results to new column titled winner
df$winner <- ifelse (df$A_points > df$B_points, ' A ',
               ifelse (df$A_points < df$B_points, ' B ', ' Tie '))

#view data frame
df

  A_points B_points winner
1 1 4 B
2 3 5 B
3 3 2 A
4 3 3 Tie
5 5 2 A

比较结果显示在名为Winner的新列中。

其他资源

如何在 R 中堆叠数据框列
如何在R中将两列合并为一列
如何在 R 中迭代列名

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注