Я хочу присвоить половину вектора 1, а остальные o
df <- c("1","a","b","2") [1] "1" "a" "b" "2"
Ожидаемый результат
[1] "1" "1" "0" "0"
большое спасибо заранее
Также, немного по-другому, будет:
'<-'(df, +(seq_along(df) <= length(df) %/% 2)) #df #[1] 1 1 0 0
Использование rep
rep
rep(1:0, each = length(df)/2, length.out = length(df)) #[1] 1 1 0 0
Если не имеет значения, как назначены 1 и 0, вы можете указать только length.out
length.out
rep(1:0, length.out = length(df)) #[1] 1 0 1 0