根据 R 中的 even/odd 行赋值

Assign value based on even/odd rows in R

我有一个包含 67000 行的 dataframe,我想用 Al 替换奇数行的内容,用 [=14= 替换偶数行的内容].它应该很简单,但我遗漏了一些东西。

 dataframe$variable <- "NA"`

 odd_indexes<-seq(1,nrow(dataframe),2)

 even_indexes<-seq(2,nrow(dataframe),2)

以下代码无效。

 dataframe$variable[odd_indexes,] <- "Al"

 dataframe$variable[even_indexes,] <- "Bt"

我收到此错误:Error in dataframe$variable[odd_indexes, ] : incorrect number of dimensions

怎么样:

dataframe[odd_indexes, "variable"] <- "Al"

dataframe[even_indexes, "variable"] <- "Bt"

rep() 成功了:

dataframe$variable <- rep(c("Al", "Bt"), length.out=nrow(dataframe))