0

Here is how my dataset looks like :

A1  B1  C1  D1  E1  F1
A   1   10  100 2   0.5
A   2   20  120 4   0.7
A   3   30  300 5   0.8
A   4   2   200 1   0.9
B   5   5   115 1   1
B   6   100 100 1   0

I am new to modelling. I have to select a model such that I pick B1 with least value of F1 for every A1(eg: A). Can anybody suggest what is the model I am supposed to use to achieve the same.

pranav
  • 1,041
  • 1
  • 10
  • 11
  • somthing like `by(dat, dat$A1, function(x) data.frame(A1=x$A1[1], x$B1[which.min(x$F1)]))`? – chinsoon12 Feb 20 '18 at 06:52
  • @chinsoon12, Data shared is a training data set. I am supposed to classify new data where I would not have F1 value. So a model using variables C1,D1,E1 values is required. – pranav Feb 20 '18 at 07:45

1 Answers1

1

Can do like this

data <- data.frame(
     A1 = c("A", "A", "A", "A", "B", "B"),
     B1 = c(1, 2, 3, 4, 5, 6),
     C1 = c(10, 20, 30, 2, 5, 100),
     D1 = c(100, 120, 300, 200, 115, 100),
     E1 = c(2, 4, 5, 1, 1, 1),
     F1 = c(0.5, 0.7, 0.8, 0.9, 1, 0)
)

res <- c(by(data = data, INDICES = data$A1, FUN = function(x) x$B1[which.min(x$F1)], simplify = TRUE))
# A B 
# 1 6
Aleh
  • 776
  • 7
  • 11