如何在存储在 R 列表中的数据框中创建另一列的幂列?
要创建存储在 R 列表中的数据框中另一列的幂列,我们可以按照以下步骤操作:
首先,创建一个数据框列表。
然后,使用 lapply 函数在存储在列表中的数据框中创建另一列的幂列。
示例
创建数据框列表
使用 data.frame 函数创建数据框,并使用 list 函数创建这些数据框的列表:
df1<-data.frame(x=sample(1:10,25,replace=TRUE),y=sample(1:5,25,replace=TRUE)) df2<-data.frame(x=sample(1:2,25,replace=TRUE),y=sample(1:5,25,replace=TRUE)) List<-list(df1,df2) List
输出
执行上述脚本后,将生成以下输出(由于随机化,此输出将在您的系统上有所不同):
[[1]] x y 1 9 4 2 4 4 3 4 1 4 6 3 5 8 4 6 6 3 7 4 1 8 5 2 9 8 5 10 10 2 11 2 4 12 9 3 13 9 4 14 6 2 15 10 3 16 10 1 17 4 2 18 5 5 19 2 1 20 3 4 21 7 5 22 7 4 23 4 2 24 7 4 25 6 2 [[2]] x y 1 2 5 2 1 5 3 1 2 4 1 1 5 1 4 6 2 1 7 1 2 8 1 2 9 1 3 10 1 5 11 1 2 12 2 4 13 2 4 14 1 3 15 2 4 16 2 3 17 1 1 18 2 1 19 1 2 20 1 5 21 2 5 22 1 3 23 1 4 24 2 3 25 2 1
创建另一列的幂列
使用 lapply 函数在存储在名为 List 的列表中的数据框 df1 和 df2 中创建另一列的幂列,如下所示:
df1-data.frame(x=sample(1:10,25,replace=TRUE),y=sample(1:5,25,replace=TRUE)) df2<-data.frame(x=sample(1:2,25,replace=TRUE),y=sample(1:5,25,replace=TRUE)) List<-list(df1,df2) lapply(List,function(x) { + x$PowerCol2<-(x$x)^(x$y) + return(x) + })
输出
[[1]] x y PowerCol2 1 9 4 6561 2 4 4 256 3 4 1 4 4 6 3 216 5 8 4 4096 6 6 3 216 7 4 1 4 8 5 2 25 9 8 5 32768 10 10 2 100 11 2 4 16 12 9 3 729 13 9 4 6561 14 6 2 36 15 10 3 1000 16 10 1 10 17 4 2 16 18 5 5 3125 19 2 1 2 20 3 4 81 21 7 5 16807 22 7 4 2401 23 4 2 16 24 7 4 2401 25 6 2 36 [[2]] x y PowerCol2 1 2 5 32 2 1 5 1 3 1 2 1 4 1 1 1 5 1 4 1 6 2 1 2 7 1 2 1 8 1 2 1 9 1 3 1 10 1 5 1 11 1 2 1 12 2 4 16 13 2 4 16 14 1 3 1 15 2 4 16 16 2 3 8 17 1 1 1 18 2 1 2 19 1 2 1 20 1 5 1 21 2 5 32 22 1 3 1 23 1 4 1 24 2 3 8 25 2 1 2
广告