How to find the mean of list elements without unlisting them in R?


Most of the times, unlisting is used to find the mean of list elements but we can also use double-square brackets for the same purpose. The double-square brackets are basically used to access the values in the elements of the list, thus mean function works with those values directly. Look at the below example to understand how it works.

Example

Consider the below list:

Live Demo

> x<-rpois(50,5)
> x

Output

[1] 3 3 3 5 3 1 4 7 5 4 5 9 9 7 4 3 6 2 4 3 3 4 7 4 4
[26] 4 5 3 4 4 3 5 7 2 3 4 7 9 6 3 2 7 12 8 3 2 4 3 7 7

Example

Live Demo

> y<-rpois(75,8)
> y

Output

[1] 10 13 3 4 8 13 9 7 6 6 10 8 6 6 2 8 11 18 7 6 9 9 4 11 6
[26] 15 7 6 8 6 7 3 6 7 8 10 5 5 5 6 9 11 11 9 4 9 7 4 11 7
[51] 7 8 8 6 5 4 10 10 10 11 8 5 9 13 12 6 15 12 9 10 9 10 8 9 11

Example

Live Demo

> z<-sample(0:10,70,replace=TRUE)
> z

Output

[1] 1 2 5 1 5 10 3 3 0 3 4 6 1 10 10 10 7 9 4 4 6 8 8 2 10
[26] 3 10 7 5 7 7 10 8 4 5 0 1 7 4 3 6 7 3 6 9 4 6 2 1 2
[51] 8 3 4 3 7 1 5 0 2 1 6 1 8 7 2 1 0 9 1 5

Example

Live Demo

> a<-rnorm(70,5,1)
> a

Output

[1] 5.628975 5.573691 5.006051 5.077979 5.871554 5.385300 4.657602 4.735646
[9] 4.442138 4.760412 5.017734 4.280068 7.686220 3.875272 4.067216 5.701463
[17] 5.593412 5.775659 5.879765 5.016738 3.994980 5.155600 6.712727 4.389124
[25] 6.122981 4.864763 3.368189 5.707907 3.795154 5.352383 5.916437 4.626415
[33] 3.880298 4.557015 4.811892 6.055774 7.219117 4.646261 4.674638 6.131624
[41] 4.965561 4.821740 3.863569 3.450784 5.343807 3.379690 4.184890 5.120902
[49] 5.729253 4.493643 4.401883 3.231263 4.858176 2.979016 3.687358 4.505526
[57] 4.562880 6.275943 6.123173 7.069203 3.584879 4.142615 5.263056 4.817530
[65] 5.623996 4.190001 3.751704 2.850223 3.585672 4.894851

Example

Live Demo

> b<-runif(80,3,8)
> b

Output

[1] 3.442903 4.001856 6.432766 4.891293 5.044795 5.218431 3.171832 4.397526
[9] 6.285000 6.379085 5.709033 6.291581 4.218582 4.236623 4.174158 5.074241
[17] 6.673121 7.885147 5.019942 6.679726 3.431944 3.822653 5.507297 5.496158
[25] 5.514768 4.815769 3.499057 4.669202 4.775597 7.990668 6.883988 6.130633
[33] 6.777758 3.015941 6.189278 4.884390 6.961173 4.642663 6.739331 4.135479
[41] 7.120461 6.584457 4.597551 4.988885 3.520279 6.762352 5.131450 7.817774
[49] 7.881543 4.903794 5.692226 4.195919 4.629501 3.668161 3.138173 4.645494
[57] 7.514812 5.957177 6.617235 6.490214 5.175956 4.944264 6.886052 7.902101
[65] 6.308360 3.615881 5.029082 6.779920 7.993889 4.205757 3.185573 3.111127
[73] 7.556962 3.458693 7.766828 7.935259 5.964028 4.831651 6.164589 6.658785

Example

Live Demo

> c<-rexp(60,3.12)
> c

Output

[1] 0.1047474880 0.1613035476 0.2720461048 0.3714672737 0.1450241494
[6] 0.1172384887 0.0929828154 0.0664085124 0.1664490039 0.1463586694
[11] 0.5154090083 0.3250343993 0.0129845417 0.1228420892 0.0005871378
[16] 0.4522178841 0.0405094619 0.0640481666 0.1504493882 0.0456359051
[21] 0.3061571805 0.2142645778 0.0006100014 0.8694030410 0.1857693661
[26] 0.8603525043 0.5723388268 0.1471301074 0.3497110378 0.0989022598
[31] 0.7969995083 0.1855059460 0.3252937372 0.0620924534 0.5784960475
[36] 0.5985177050 0.0473140977 0.4036286207 0.0482094750 0.0045920645
[41] 0.1998384091 0.3897105935 0.1562889333 0.3647960092 0.2741774798
[46] 0.0256578746 0.3201171403 0.2401259122 0.7529862278 0.3503083498
[51] 0.1387969009 0.0194571765 0.0571447048 0.4248323683 0.3069464950
[56] 0.2832176146 0.0090127322 0.0379236670 0.3523537577 0.2085964980

Example

Live Demo

> w<-sample(1:100,65)
> w

Output

[1] 58 94 72 56 33 29 9 28 60 42 97 40 67 98 78 68 43 2 10
[20] 53 79 27 47 1 41 84 34 99 92 19 93 37 13 64 51 3 46 52
[39] 59 35 73 30 80 17 95 76 15 44 81 21 55 74 83 6 77 36 8
[58] 65 63 45 14 71 100 61 90

Example

Live Demo

> q<-round(rnorm(150),0)
> q

Output

[1] -1 -1 0 0 0 1 0 -2 -1 0 1 0 0 -1 1 1 1 2 2 -1 -1 0 1 1 1
[26] -3 -1 0 0 2 0 1 0 -1 1 0 0 1 2 2 1 0 1 0 1 1 0 1 0 1
[51] 0 1 0 0 1 1 2 0 1 1 -1 0 1 1 0 1 0 0 0 0 0 -1 0 1 0
[76] 1 1 1 -2 -1 1 0 0 0 2 -1 1 0 0 0 -1 0 0 -2 2 0 1 1 -1 1
[101] -3 -1 -1 1 1 -2 0 0 1 0 0 1 -1 0 2 -1 -1 1 0 1 -1 0 0 -1 0
[126] 0 1 -1 -2 1 0 1 -1 0 -1 0 -2 -1 0 1 -1 1 1 -1 0 -2 -1 2 -2 0

Example

> List<-list(x,y,z,a,b,c,w,q)
> List

Output

[[1]]
[1] 3 3 3 5 3 1 4 7 5 4 5 9 9 7 4 3 6 2 4 3 3 4 7 4 4
[26] 4 5 3 4 4 3 5 7 2 3 4 7 9 6 3 2 7 12 8 3 2 4 3 7 7

[[2]]
[1] 10 13 3 4 8 13 9 7 6 6 10 8 6 6 2 8 11 18 7 6 9 9 4 11 6
[26] 15 7 6 8 6 7 3 6 7 8 10 5 5 5 6 9 11 11 9 4 9 7 4 11 7
[51] 7 8 8 6 5 4 10 10 10 11 8 5 9 13 12 6 15 12 9 10 9 10 8 9 11

[[3]]
[1] 1 2 5 1 5 10 3 3 0 3 4 6 1 10 10 10 7 9 4 4 6 8 8 2 10
[26] 3 10 7 5 7 7 10 8 4 5 0 1 7 4 3 6 7 3 6 9 4 6 2 1 2
[51] 8 3 4 3 7 1 5 0 2 1 6 1 8 7 2 1 0 9 1 5

[[4]]
[1] 5.628975 5.573691 5.006051 5.077979 5.871554 5.385300 4.657602 4.735646
[9] 4.442138 4.760412 5.017734 4.280068 7.686220 3.875272 4.067216 5.701463
[17] 5.593412 5.775659 5.879765 5.016738 3.994980 5.155600 6.712727 4.389124
[25] 6.122981 4.864763 3.368189 5.707907 3.795154 5.352383 5.916437 4.626415
[33] 3.880298 4.557015 4.811892 6.055774 7.219117 4.646261 4.674638 6.131624
[41] 4.965561 4.821740 3.863569 3.450784 5.343807 3.379690 4.184890 5.120902
[49] 5.729253 4.493643 4.401883 3.231263 4.858176 2.979016 3.687358 4.505526
[57] 4.562880 6.275943 6.123173 7.069203 3.584879 4.142615 5.263056 4.817530
[65] 5.623996 4.190001 3.751704 2.850223 3.585672 4.894851

[[5]]
[1] 3.442903 4.001856 6.432766 4.891293 5.044795 5.218431 3.171832 4.397526
[9] 6.285000 6.379085 5.709033 6.291581 4.218582 4.236623 4.174158 5.074241
[17] 6.673121 7.885147 5.019942 6.679726 3.431944 3.822653 5.507297 5.496158
[25] 5.514768 4.815769 3.499057 4.669202 4.775597 7.990668 6.883988 6.130633
[33] 6.777758 3.015941 6.189278 4.884390 6.961173 4.642663 6.739331 4.135479
[41] 7.120461 6.584457 4.597551 4.988885 3.520279 6.762352 5.131450 7.817774
[49] 7.881543 4.903794 5.692226 4.195919 4.629501 3.668161 3.138173 4.645494
[57] 7.514812 5.957177 6.617235 6.490214 5.175956 4.944264 6.886052 7.902101
[65] 6.308360 3.615881 5.029082 6.779920 7.993889 4.205757 3.185573 3.111127
[73] 7.556962 3.458693 7.766828 7.935259 5.964028 4.831651 6.164589 6.658785

[[6]]
[1] 0.1047474880 0.1613035476 0.2720461048 0.3714672737 0.1450241494
[6] 0.1172384887 0.0929828154 0.0664085124 0.1664490039 0.1463586694
[11] 0.5154090083 0.3250343993 0.0129845417 0.1228420892 0.0005871378
[16] 0.4522178841 0.0405094619 0.0640481666 0.1504493882 0.0456359051
[21] 0.3061571805 0.2142645778 0.0006100014 0.8694030410 0.1857693661
[26] 0.8603525043 0.5723388268 0.1471301074 0.3497110378 0.0989022598
[31] 0.7969995083 0.1855059460 0.3252937372 0.0620924534 0.5784960475
[36] 0.5985177050 0.0473140977 0.4036286207 0.0482094750 0.0045920645
[41] 0.1998384091 0.3897105935 0.1562889333 0.3647960092 0.2741774798
[46] 0.0256578746 0.3201171403 0.2401259122 0.7529862278 0.3503083498
[51] 0.1387969009 0.0194571765 0.0571447048 0.4248323683 0.3069464950
[56] 0.2832176146 0.0090127322 0.0379236670 0.3523537577 0.2085964980

[[7]]
[1] 58 94 72 56 33 29 9 28 60 42 97 40 67 98 78 68 43 2 10
[20] 53 79 27 47 1 41 84 34 99 92 19 93 37 13 64 51 3 46 52
[39] 59 35 73 30 80 17 95 76 15 44 81 21 55 74 83 6 77 36 8
[58] 65 63 45 14 71 100 61 90

[[8]]
[1] -1 -1 0 0 0 1 0 -2 -1 0 1 0 0 -1 1 1 1 2 2 -1 -1 0 1 1 1
[26] -3 -1 0 0 2 0 1 0 -1 1 0 0 1 2 2 1 0 1 0 1 1 0 1 0 1
[51] 0 1 0 0 1 1 2 0 1 1 -1 0 1 1 0 1 0 0 0 0 0 -1 0 1 0
[76] 1 1 1 -2 -1 1 0 0 0 2 -1 1 0 0 0 -1 0 0 -2 2 0 1 1 -1 1
[101] -3 -1 -1 1 1 -2 0 0 1 0 0 1 -1 0 2 -1 -1 1 0 1 -1 0 0 -1 0
[126] 0 1 -1 -2 1 0 1 -1 0 -1 0 -2 -1 0 1 -1 1 1 -1 0 -2 -1 2 -2 0

Finding the mean of each element in the list:

Example

> mean(List[[1]])

Output

[1] 4.72

Example

> mean(List[[2]])

Output

[1] 8.146667

Example

> mean(List[[3]])

Output

[1] 4.757143

Example

> mean(List[[4]])

Output

[1] 4.882414

Example

> mean(List[[5]])

Output

[1] 5.480545

Example

> mean(List[[6]])

Output

[1] 0.249022

Example

> mean(List[[7]])

Output

[1] 52.2

Example

> mean(List[[8]])

Output

[1] 0.1066667

Updated on: 19-Nov-2020

178 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements