Как сравнить два столбца в 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
Результаты сравнения отображаются в новом столбце под названием «Победитель» .
Дополнительные ресурсы
Как складывать столбцы фрейма данных в R
Как объединить два столбца в один в R
Как перебирать имена столбцов в R