如何在存储在 R 列表中的数据框中创建一列以 10 为基数的日志?
要在存储在R列表中的数据帧中创建以10为基数的日志列,我们可以按照以下步骤操作-
首先,创建一个数据框列表。
然后,使用lapply函数在列表中存储的数据帧中创建一列以10为基数的日志。
示例
创建数据框列表
使用data.frame函数创建数据框和列表函数来创建这些数据框的列表-
df1<-data.frame(x=sample(1:100,25)) df2<-data.frame(x=sample(1:100,25)) List<-list(df1,df2) List输出结果
执行时,上述脚本生成以下内容output(thisoutputwillvaryonyoursystemduetorandomization)-
[[1]] x 1 53 2 74 3 55 4 45 5 85 6 57 7 15 8 92 9 4 10 79 11 28 12 17 13 81 14 6 15 10 16 25 17 2 18 8 19 91 20 48 21 37 22 52 23 42 24 16 25 93 [[2]] x 1 88 2 75 3 27 4 90 5 81 6 59 7 14 8 45 9 43 10 31 11 38 12 85 13 2 14 79 15 87 16 52 17 96 18 20 19 77 20 7 21 56 22 80 23 32 24 53 25 9
在存储在列表中的数据框中创建一列以10为基数的日志
使用lapply函数在存储在名为List的列表中的数据帧df1和df2中创建一列以10为基数的日志,如下所示-
df1<-data.frame(x=sample(1:100,25))
df2<-data.frame(x=sample(1:100,25))
List<-list(df1,df2)
lapply(List,function(x) {
+ x$LogBase10<-log10(x$x)
+ return(x)
+ })输出结果[[1]]
x LogBase10
1 53 1.7242759
2 74 1.8692317
3 55 1.7403627
4 45 1.6532125
5 85 1.9294189
6 57 1.7558749
7 15 1.1760913
8 92 1.9637878
9 4 0.6020600
10 79 1.8976271
11 28 1.4471580
12 17 1.2304489
13 81 1.9084850
14 6 0.7781513
15 10 1.0000000
16 25 1.3979400
17 2 0.3010300
18 8 0.9030900
19 91 1.9590414
20 48 1.6812412
21 37 1.5682017
22 52 1.7160033
23 42 1.6232493
24 16 1.2041200
25 93 1.9684829
[[2]]
x LogBase10
1 88 1.9444827
2 75 1.8750613
3 27 1.4313638
4 90 1.9542425
5 81 1.9084850
6 59 1.7708520
7 14 1.1461280
8 45 1.6532125
9 43 1.6334685
10 31 1.4913617
11 38 1.5797836
12 85 1.9294189
13 2 0.3010300
14 79 1.8976271
15 87 1.9395193
16 52 1.7160033
17 96 1.9822712
18 20 1.3010300
19 77 1.8864907
20 7 0.8450980
21 56 1.7481880
22 80 1.9030900
23 32 1.5051500
24 53 1.7242759
25 9 0.9542425