如何在存储在 R 列表中的数据框中创建一列的另一列的幂?
要在R列表中存储的数据帧中创建一列的另一列的幂,我们可以按照以下步骤操作-
首先,创建一个数据框列表。
然后,使用lapply函数在存储在列表中的数据帧中创建一个对另一列进行幂次幂的列。
示例
创建数据框列表
使用data.frame函数创建数据框和列表函数来创建这些数据框的列表-
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输出结果
执行时,上述脚本生成以下内容output(thisoutputwillvaryonyoursystemduetorandomization)-
[[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