对R中的不同数据帧使用以nrow为频率的rep函数

对R中的不同数据帧使用以nrow为频率的rep函数,r,apply,R,Apply,如果我有: One <- c(rep("X",6),rep("Y",3),rep("Z",2)) Two <- c(rep("Blue",4),rep("Red",7)) Three <- c(rep("A",4),rep("B",6),rep("C",1)) Four <- c(rep("Green",5),rep("Black",6)) df1 <- cbind(One,Two) df2 <- cbind(Three,Four) df.final &

如果我有:

One <- c(rep("X",6),rep("Y",3),rep("Z",2))
Two <- c(rep("Blue",4),rep("Red",7))

Three <- c(rep("A",4),rep("B",6),rep("C",1))
Four <- c(rep("Green",5),rep("Black",6))

df1 <- cbind(One,Two)
df2 <- cbind(Three,Four)

df.final <- as.data.frame(rbind(df1,df2))


Month <- c(rep("January",nrow(df1)), rep("February",nrow(df2)))
cbind(Month,df.final)

      Month One   Two
1   January   X  Blue
2   January   X  Blue
3   January   X  Blue
4   January   X  Blue
5   January   X   Red
6   January   X   Red
7   January   Y   Red
8   January   Y   Red
9   January   Y   Red
10  January   Z   Red
11  January   Z   Red
12 February   A Green
13 February   A Green
14 February   A Green
15 February   A Green
16 February   B Green
17 February   B Black
18 February   B Black
19 February   B Black
20 February   B Black
21 February   B Black
22 February   C Black

我试图避免使用
Months您是否希望从每个数据帧
表(df$month)
中获得一个包含月份的表?这将为您提供每月在数据框中出现多少次的计数

a <- data.frame(rep("january",10))
names(a) <- c("Month")
b <- a
c <- a
df_list <- list(a,b,c)
sapply(df_list,function(x)table(x$Month))

!> sapply(df_list,function(x)table(x$Month))
 january january january
      10      10      10

不清楚你的预期结果。
a <- data.frame(rep("january",10))
names(a) <- c("Month")
b <- a
c <- a
df_list <- list(a,b,c)
sapply(df_list,function(x)table(x$Month))

!> sapply(df_list,function(x)table(x$Month))
 january january january
      10      10      10
sapply(df_list,function(x)table(x$Month)/nrow(x))

!> sapply(df_list,function(x)table(x$Month)/nrow(x))
 january january january
       1       1       1