Разделение одного столбца в моем наборе данных на фиксированное значение в R

Я довольно новичок в R и вот (может быть, простой) вопрос:

У меня есть большие наборы данных.dat, и я складываю два из них, чтобы получить сумму значений. Наборы данных выглядят примерно так:

#stud1     
AMR  X1  X2  X3...
  1   3   4  10
  2   4   5   2

#stud2 
AMR  X1  X2  X3
  1   6   4   6
  2   1   2   1

Так что я сделал, это

> studAll <- stud1 + stud2

и результат был:

# studAll:
AMR  X1  X2   X3
  2   9   8   16
  4   5   7    3

МОЯ ПРОБЛЕМА СЕЙЧАС ЕСТЬ: Столбец AMR не предназначен для изменения, поэтому моя идея заключалась в том, чтобы разделить этот столбец на значение "2", чтобы получить прежние значения. Или есть другое решение проще, чем моя идея?

1 ответ

Если я правильно понимаю ваш вопрос, вы хотите создать новый фрейм данных, который добавляет все столбцы, кроме AMR?

Вы могли бы сделать это долгий путь:

studAll$X1 <- Stud1$X1 + Stud2$X1
repeat for each X...

Или это будет работать, если столбец AMR сохраняется по всем

#set up
stud1 =data.frame(c(1, 2), c(3,4),c(4,5),c(10,2))
stud2 <- stud1
cols <- (c("AMR", "X1", "X2", "X3"))
colnames(stud1) <- cols
colnames(stud2) <- cols

#add them
studAll = stud1 + stud2   
#replace the AMR column into studAll from stud1
#this assumes the AMR column is the same in all studs'
studAll$X1 <- stud1$X1

Вы также можете выбрать все столбцы, кроме AMR, и добавить их. См. Например, здесь http://www.r-tutor.com/r-introduction/data-frame

Другие вопросы по тегам