a<-c(1,2,3)
b<-c("apple","orange","fruits")
f<-c(10,12,30)
df<-data.frame(a,b,f)
Когда я бегу:Я пытаюсь использовать tapply() для dataframe в R.Getting ошибку при обращении с помощью индекса
prices<-tapply(df[1]*df[3],df[2],cumsum)
Я получаю эту ошибку:
#Error in tapply(df[1] * df[3], df[2], cumsum) :
# arguments must have same length
Однако , если я использую:
tapply(a*f,b,cumsum)
Получаю:
#apple fruits orange
# 10 90 24
В чем разница? Почему это происходит?
Вы не ссылки на столбцы правильно, он должен быть 'ДФ [, 3] * ДФ [, 4], ДФ [2]' – emilliman5
или 'ДФ [[3]]' и т.д. –