如何在存储在R列表中的数据框中创建log(1+x)列?
要在存储在R列表中的数据框中创建log(1+x)列,我们可以按照以下步骤操作:
首先,创建一个数据框列表。
然后,使用lapply函数在列表中存储的数据框中创建log(1+x)列。
示例
创建数据框列表
使用data.frame函数创建数据框,并使用list函数创建这些数据框的列表:
df1<-data.frame(x=sample(1:50,25)) df2<-data.frame(x=sample(1:50,25)) List<-list(df1,df2) List
输出
执行上述脚本后,会生成以下输出(由于随机化,此输出会在您的系统上有所不同):
[[1]] x 1 1 2 49 3 41 4 29 5 39 6 25 7 5 8 35 9 33 10 18 11 13 12 11 13 44 14 27 15 46 16 4 17 17 18 34 19 42 20 6 21 50 22 28 23 2 24 43 25 32 [[2]] x 1 19 2 18 3 21 4 38 5 46 6 29 7 22 8 35 9 16 10 7 11 23 12 28 13 15 14 11 15 42 16 2 17 43 18 31 19 34 20 1 21 47 22 14 23 24 24 12 25 3
在列表中存储的数据框中创建log(1+x)列
使用lapply函数在名为List的列表中存储的df1和df2数据框中创建log(1+x)列,如下所示:
df1<-data.frame(x=sample(1:50,25)) df2<-data.frame(x=sample(1:50,25)) List<-list(df1,df2) lapply(List,function(x) { + x$NaturalLog1PlusX<-log1p(x$x) + return(x) + })
输出
[[1]] x NaturalLog1PlusX 1 1 0.6931472 2 49 3.9120230 3 41 3.7376696 4 29 3.4011974 5 39 3.6888795 6 25 3.2580965 7 5 1.7917595 8 35 3.5835189 9 33 3.5263605 10 18 2.9444390 11 13 2.6390573 12 11 2.4849066 13 44 3.8066625 14 27 3.3322045 15 46 3.8501476 16 4 1.6094379 17 17 2.8903718 18 34 3.5553481 19 42 3.7612001 20 6 1.9459101 21 50 3.9318256 22 28 3.3672958 23 2 1.0986123 24 43 3.7841896 25 32 3.4965076 [[2]] x NaturalLog1PlusX 1 19 2.9957323 2 18 2.9444390 3 21 3.0910425 4 38 3.6635616 5 46 3.8501476 6 29 3.4011974 7 22 3.1354942 8 35 3.5835189 9 16 2.8332133 10 7 2.0794415 11 23 3.1780538 12 28 3.3672958 13 15 2.7725887 14 11 2.4849066 15 42 3.7612001 16 2 1.0986123 17 43 3.7841896 18 31 3.4657359 19 34 3.5553481 20 1 0.6931472 21 47 3.8712010 22 14 2.7080502 23 24 3.2188758 24 12 2.5649494 25 3 1.3862944
广告