Closed ratnanil closed 1 year ago
siehe #18
see #34
@ratnanil, folgender Abschnitt in script 5_Datenverarbeitung funktioniert bei mir nicht:
depo <- depo|> mutate(Tageszeit = case_when( Datetime >= nightEnd & Datetime <= goldenHourEnd ~ "Morgen", Datetime > goldenHourEnd & Datetime < goldenHour ~ "Tag", Datetime >= goldenHour & Datetime <= night ~ "Abend", .default = "Nacht")) |> mutate(Tageszeit = factor(Tageszeit, levels = c("Morgen", "Tag", "Abend", "Nacht"),ordered = TRUE))
Fehlermeldung:
Error in `mutate()`:
! Problem while computing `Tageszeit = case_when(...)`.
Caused by error in `case_when()`:
! Case 4 (`Datetime >= nightEnd & Datetime <= goldenHourEnd ~ "Morgen"`) must be a two-sided formula, not a character vector.
Run `rlang::last_error()` to see where the error occurred
Ich vermute das Problem ist irgendwo bei .default = "Nacht"
Welche dplyr version hast du? Älter als 1.1.1?
ich vermute es hängt mit dem .default
Argument zusammen (https://dplyr.tidyverse.org/news/index.html?q=.default#dplyr-110):
(
case_when()
) Has a new .default argument that is intended to replace usage ofTRUE ~ default_value
as a more explicit and readable way to specify a default value. In the future, we will deprecate the unsafe recycling of the LHS inputs that allowsTRUE ~
to work, so we encourage you to switch to using.default
.
ja, version 1.0.9. Ich habe ein Update durchgeführt und nun läuft es ohne probleme.
würde ich eher mit einem
case_when()
lösenhttps://github.com/ResearchMethods-ZHAW/HS23/blob/5b9d7ae5324c852604123666a6bbf46b914f26b0/fallstudie_s/7_Multivariat_Loesung.qmd#L234-L244