Как я могу назначить одну и ту же метку двум корзинам? (резать) - PullRequest
0 голосов
/ 12 января 2020

У меня есть измерения направления ветра и я хотел бы назначить метки для числовых c измерений (в градусах (0-360)).

Я пытался использовать cut():

meteo$DWIND <- cut(meteo$DWND, breaks = c(0,22.5,67.5,112.5,157.5,202.5,247.5,292.5,337.5,360), labels = c("N", "NE", "E","SE","S","SW","W","NW","N"))

Но при этом выдается следующее предупреждение:

В levels<- (*tmp*, значение = if (nl == nL) as.character (метки) else paste0 (метки,: дублированные уровни в факторах устарели

Я понимаю, что дважды использую метку "N" и вырезать как-то не нравится эта идея. Но это именно то, что я хочу. Назначить ту же метку "N" "к обоим бинам 0-22,5 и 337,5-360.

Не могли бы вы помочь мне найти способ достичь этого?

1 Ответ

0 голосов
/ 12 января 2020

Вы могли бы использовать этот трюк.

meteo$DWIND <- as.character(cut(meteo$DWIND, 
                                breaks=c(0,22.5,67.5,112.5,157.5,202.5,247.5,292.5,337.5,360), 
                                labels=c("N", "NE", "E","SE","S","SW","W","NW","Nfake")))
meteo$DWIND <- as.factor(ifelse(meteo$DWIND == "Nfake", "N", meteo$DWIND))
...