如何添加具有行中值的列名的列?

How to add a column with the column-names of the value in the row?

我的问题可能表述得不太好,听起来很复杂。但我想要的很简单。 从给定的数据框 Df 我制作了一个新的数据框 Df1 其中包含 max 值来自每个单独的列。 现在我想在我的新数据框 Df1 中添加一个列,其中包含最大值所在的每一列的名称。

我为此准备了一个例子。

A <- runif(5,min = 0.1, max = 3)
B <- runif(5,min = 0.1, max = 3)
C <- runif(5,min = 0.1, max = 3)
D <- runif(5,min = 0.1, max = 3)
E <- runif(5,min = 0.1, max = 3)
F <- runif(5,min = 0.1, max = 3)

Car <- c("Audi","BMW","Mercedes","Ford","Opel")

Df<-data.frame(Car,A,B,C,D,E,F)

Df1<-Df%>%
  group_by(Car)%>%
  summarize(max.value = max(A,B,C,D,E,F))

Df:

Df1:

我想要的:

一个选项是

library(dplyr)
Df %>%
   transmute(Car, max.value = pmax(!!! .[-1]), 
             rowName = names(.)[-1][max.col(.[-1])])