Я извлек из набора данных сложение, максимальное и среднее значение переменной y
вместе с максимальным значением x
.
Я также получаю значение x
при максимальном значении y
.
Я объединил эти значения, используя функцию cbind
. Я хочу merge
этот список с фреймворком данных, но получил
error:Error in sort.list(bx[m$xi]) : 'x' must be atomic for 'sort.list'
Have you called 'sort' on a list?
Кроме того, я попробовал функцию unlist
, но не дал мне удовлетворительных данных.
Вот код, который я использую:
AUC<-lapply(split(data_example, data_example$class), function(d) sum(d$y))
max.y<-lapply(split(data_example, data_example$class), function(d) max(d$y))
max.x<-lapply(split(data_example, data_example$class), function(d) max(d$x))
auc.mean<-lapply(split(data_example, data_example$class), function(d) mean(d$y))
x.ymax<-lapply(split(data_example, data_example$class), function(d)
d$x[which.max(d$y)])
data1<-cbind(AUC,max.y,max.x, auc.mean, x.ymax)
datafinal<-merge(data1, data_merge, by="class")
Здесь я загрузил данные для воспроизведения примера:
http://www.filedropper.com/dataexample_1 http://www.filedropper.com/datamerge
cbind
элементов списка. Возможно, вам нужноdata1 <- data.frame(AUC = unlist(AUC),max.y = unlist(max.y), max.x = unlist(max.x), auc.mean = unlist(auc.mean), x.ymax = unlist(x.ymax), class = names(AUC))
- person akrun   schedule 10.08.2017