Я надеюсь, что вы можете помочь мне в этом, потому что что-то кажется неправильным.
Я использую этот код для расчета квантилей определенной переменной (MarketValue) для каждого июня каждого года:
Test<- Test[format.Date(Date, "%m")=="06", DecileColumnME := cut(Marketvalue, breaks = quantile(Marketvalue, probs = 0:10/10, na.rm = TRUE),
labels = 1:10, right = TRUE), by = Date]
и это работает. Теперь я хочу сделать то же самое для данных за июнь, но на этот раз для другой переменной (отношение книги к рынку в столбце BEMERATIOLag6Month).
поэтому я использую
Test2 <- Test2[format.Date(Date, "%m")=="06", DecileColumnBEME := cut(BEMERATIOLag6Month, breaks = quantile(BEMERATIOLag6Month, probs = 0:10/10, na.rm = TRUE),
labels = 1:10, right = TRUE), by = Date]
но на этот раз я получаю сообщение об ошибке:
Error in cut.default(BEMERATIOLag6Month, breaks = quantile(BEMERATIOLag6Month, :
lengths of 'breaks' and 'labels' differ
но я не понимаю, почему это так? :( это одно и то же понятие, оба столбца (Marketvalue и BEMERATIOLag6Month) имеют num, я проверял через str ().
Может ли кто-нибудь мне помочь?
заранее спасибо
EDIT:
Я решил это, используя метки = ЛОЖЬ. тогда он просто возвращает простые целые числа, а не факторы, что меня устраивает. Я все еще не понимаю, почему это не работает как на столбце marketvalue, все же.