Re: [R] Average every 4 columns

2016-11-12 Thread Jim Lemon
Hi Miluj,
Perhaps you didn't get my previous email. Let your data frame be named "msdf":

block_col_summ<-function(x,step,block_size,FUN="mean") {
 dimx<-dim(x)
 return_value<-NA
 start<-1
 end<-start+block_size-1
 block_count<-1
 while(end <= dimx[2]) {
  return_value[block_count]<-
   do.call(FUN,list(as.matrix(x[,start:end]),na.rm=TRUE))
  block_count<-block_count+1
  start<-start+step
  end<-start+block_size-1
 }
 return(return_value)
}
# use the step and block size that you want
block_col_summ(msdf,4,4)

Jim


On Thu, Nov 10, 2016 at 3:29 AM, Miluji Sb  wrote:
> Dear all,
>
> I have a dataset with hundreds of columns, I am only providing only 12
> columns. Is it possible to take the mean of every four (or 12) columns
>  (value601, value602, value603, value604 etc.in this case) and repeat for
> the hundreds of columns? Thank you.
>
> Sincerely,
>
> Milu
>
> structure(list(value601 = c(10.1738710403442, 3.54112911224365,
> 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
> -7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
> ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
> 2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
> -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
> c(22.0399188995361,
> 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
> 18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
> 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
> 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
> 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
> ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
> 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
> 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
> c(33.9698333740234,
> 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
> 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
> 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
> 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
> 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
> ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
> 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
> 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
> c(27.5402088165283,
> 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
> 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
> 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
> 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
> 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
> ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
> 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
> 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
> c(9.12979793548584,
> 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
> 7.55471754074097, -5.58141136169434, -0.566209673881531, 12.3264112472534,
> 6.65576601028442)), .Names = c("value601", "value602", "value603",
> "value604", "value605", "value606", "value607", "value608", "value609",
> "value610", "value611", "value612"), row.names = c("1", "2",
> "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
>
> [[alternative HTML version deleted]]
>
> __
> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] Average every 4 columns

2016-11-09 Thread Jim Lemon
Thanks - it made me realize that I had reversed the column and row selection

rowMeans(x[seq(1:dim(x)[1],by=4),-1])

Jim


On Thu, Nov 10, 2016 at 8:30 AM, Uwe Ligges
 wrote:
>
>
> On 09.11.2016 22:06, Jim Lemon wrote:
>>
>> Hi Milu,
>> Perhaps this will help:
>>
>> apply(as.matrix(x[-1,seq(1:dim(x)[1],by=4)]),1,mean)
>
>
> More efficient than apply(..., 1, mean): rowMeans()
>
> Best,
> Uwe Ligges
>
>
>
>
>>
>> Jim
>>
>>
>> On Thu, Nov 10, 2016 at 4:00 AM, Miluji Sb  wrote:
>>>
>>> Thanks a lot for your quick reply. I made a mistake in the question, I
>>> meant to ask every 4 (or 12) rows not columns. Apologies. Thanks again!
>>>
>>> Sincerely,
>>>
>>> Milu
>>>
>>> On Wed, Nov 9, 2016 at 5:45 PM, Dalthorp, Daniel 
>>> wrote:
>>>
 Hi Milu,
 The following should work for an array x (provided dim(x)[2] is
 divisible
 by 4):

 colMeans(x[,0:(dim(x)[2]/4-1)*4+1])

 -Dan

 On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:

> Dear all,
>
> I have a dataset with hundreds of columns, I am only providing only 12
> columns. Is it possible to take the mean of every four (or 12) columns
>  (value601, value602, value603, value604 etc.in this case) and repeat
> for
> the hundreds of columns? Thank you.
>
> Sincerely,
>
> Milu
>
> structure(list(value601 = c(10.1738710403442, 3.54112911224365,
> 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
> -7.11564493179321, 0.987620949745178, 13.0476207733154,
> 6.36939525604248
> ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
> 2.88946437835693, 14.9204912185669, 9.42428588867188,
> -6.80674123764038,
> -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
> c(22.0399188995361,
> 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
> 18.3277816772461, -2.54092741012573, 10.5550804138184,
> 25.1016540527344,
> 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
> 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
> 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
> ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
> 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
> 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
> c(33.9698333740234,
> 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
> 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
> 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
> 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
> 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
> ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
> 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
> 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
> c(27.5402088165283,
> 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
> 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
> 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
> 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
> 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
> ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
> 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
> 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
> c(9.12979793548584,
> 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
> 7.55471754074097, -5.58141136169434, -0.566209673881531,
> 12.3264112472534,
> 6.65576601028442)), .Names = c("value601", "value602", "value603",
> "value604", "value605", "value606", "value607", "value608", "value609",
> "value610", "value611", "value612"), row.names = c("1", "2",
> "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
>
> [[alternative HTML version deleted]]
>
> __
> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posti
> ng-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
>


 --
 Dan Dalthorp, PhD
 USGS Forest and Rangeland Ecosystem Science Center
 Forest Sciences Lab, Rm 189
 3200 SW Jefferson Way
 Corvallis, OR 97331
 ph: 541-750-0953
 ddalth...@usgs.gov


>>>
>>> [[alternative HTML version deleted]]
>>>
>>> 

Re: [R] Average every 4 columns

2016-11-09 Thread Uwe Ligges



On 09.11.2016 22:06, Jim Lemon wrote:

Hi Milu,
Perhaps this will help:

apply(as.matrix(x[-1,seq(1:dim(x)[1],by=4)]),1,mean)


More efficient than apply(..., 1, mean): rowMeans()

Best,
Uwe Ligges





Jim


On Thu, Nov 10, 2016 at 4:00 AM, Miluji Sb  wrote:

Thanks a lot for your quick reply. I made a mistake in the question, I
meant to ask every 4 (or 12) rows not columns. Apologies. Thanks again!

Sincerely,

Milu

On Wed, Nov 9, 2016 at 5:45 PM, Dalthorp, Daniel  wrote:


Hi Milu,
The following should work for an array x (provided dim(x)[2] is divisible
by 4):

colMeans(x[,0:(dim(x)[2]/4-1)*4+1])

-Dan

On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:


Dear all,

I have a dataset with hundreds of columns, I am only providing only 12
columns. Is it possible to take the mean of every four (or 12) columns
 (value601, value602, value603, value604 etc.in this case) and repeat for
the hundreds of columns? Thank you.

Sincerely,

Milu

structure(list(value601 = c(10.1738710403442, 3.54112911224365,
12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
-7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
-0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
c(22.0399188995361,
14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
c(33.9698333740234,
26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
c(27.5402088165283,
21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
5.73408317565918, 18.9752082824707, 13.572542236), value612 =
c(9.12979793548584,
2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
7.55471754074097, -5.58141136169434, -0.566209673881531, 12.3264112472534,
6.65576601028442)), .Names = c("value601", "value602", "value603",
"value604", "value605", "value606", "value607", "value608", "value609",
"value610", "value611", "value612"), row.names = c("1", "2",
"3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")

[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posti
ng-guide.html
and provide commented, minimal, self-contained, reproducible code.





--
Dan Dalthorp, PhD
USGS Forest and Rangeland Ecosystem Science Center
Forest Sciences Lab, Rm 189
3200 SW Jefferson Way
Corvallis, OR 97331
ph: 541-750-0953
ddalth...@usgs.gov




[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide 

Re: [R] Average every 4 columns

2016-11-09 Thread Jim Lemon
Hi Milu,
Perhaps this will help:

apply(as.matrix(x[-1,seq(1:dim(x)[1],by=4)]),1,mean)

Jim


On Thu, Nov 10, 2016 at 4:00 AM, Miluji Sb  wrote:
> Thanks a lot for your quick reply. I made a mistake in the question, I
> meant to ask every 4 (or 12) rows not columns. Apologies. Thanks again!
>
> Sincerely,
>
> Milu
>
> On Wed, Nov 9, 2016 at 5:45 PM, Dalthorp, Daniel  wrote:
>
>> Hi Milu,
>> The following should work for an array x (provided dim(x)[2] is divisible
>> by 4):
>>
>> colMeans(x[,0:(dim(x)[2]/4-1)*4+1])
>>
>> -Dan
>>
>> On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:
>>
>>> Dear all,
>>>
>>> I have a dataset with hundreds of columns, I am only providing only 12
>>> columns. Is it possible to take the mean of every four (or 12) columns
>>>  (value601, value602, value603, value604 etc.in this case) and repeat for
>>> the hundreds of columns? Thank you.
>>>
>>> Sincerely,
>>>
>>> Milu
>>>
>>> structure(list(value601 = c(10.1738710403442, 3.54112911224365,
>>> 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
>>> -7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
>>> ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
>>> 2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
>>> -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
>>> c(22.0399188995361,
>>> 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
>>> 18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
>>> 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
>>> 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
>>> 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
>>> ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
>>> 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
>>> 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
>>> c(33.9698333740234,
>>> 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
>>> 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
>>> 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
>>> 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
>>> 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
>>> ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
>>> 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
>>> 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
>>> c(27.5402088165283,
>>> 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
>>> 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
>>> 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
>>> 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
>>> 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
>>> ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
>>> 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
>>> 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
>>> c(9.12979793548584,
>>> 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
>>> 7.55471754074097, -5.58141136169434, -0.566209673881531, 12.3264112472534,
>>> 6.65576601028442)), .Names = c("value601", "value602", "value603",
>>> "value604", "value605", "value606", "value607", "value608", "value609",
>>> "value610", "value611", "value612"), row.names = c("1", "2",
>>> "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
>>>
>>> [[alternative HTML version deleted]]
>>>
>>> __
>>> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide http://www.R-project.org/posti
>>> ng-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>>
>>
>>
>> --
>> Dan Dalthorp, PhD
>> USGS Forest and Rangeland Ecosystem Science Center
>> Forest Sciences Lab, Rm 189
>> 3200 SW Jefferson Way
>> Corvallis, OR 97331
>> ph: 541-750-0953
>> ddalth...@usgs.gov
>>
>>
>
> [[alternative HTML version deleted]]
>
> __
> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible 

Re: [R] Average every 4 columns

2016-11-09 Thread David Winsemius

> On Nov 9, 2016, at 9:24 AM, David Winsemius  wrote:
> 
> 
>> On Nov 9, 2016, at 9:00 AM, Miluji Sb  wrote:
>> 
>> Thanks a lot for your quick reply. I made a mistake in the question, I
>> meant to ask every 4 (or 12) rows not columns. Apologies. Thanks again!
> 
> Then try matrix( sapply( split( x , 0:(dim(x)[2]/4-1)*4+1] ), mean) 
> 
> Again assuming that dim(x)[1] is evenly divisible by 4. (It's not clear if 
> you wanted these means "within columns" or "blocks defined by rows". This is 
> lightly tested but should provide the latter. 
> 
> sapply( split ( unlist(x) , 0:(dim(x)[2]/4-1)*4+1 ), mean)
>   159 
> 19.44819 19.22003 19.12812 

I failed to understand Daniel's logic an blindly copied his sequence which was 
not what I thought it would produce. 

Your request for "every 4" seems problematic in that your example has 10 rows 
and you haven't said what to do with the "bottom" 2 rows.

-- 
David
> 
>> 
>> Sincerely,
>> 
>> Milu
>> 
>> On Wed, Nov 9, 2016 at 5:45 PM, Dalthorp, Daniel  wrote:
>> 
>>> Hi Milu,
>>> The following should work for an array x (provided dim(x)[2] is divisible
>>> by 4):
>>> 
>>> colMeans(x[,
>>> 
>>> -Dan
>>> 
>>> On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:
>>> 
 Dear all,
 
 I have a dataset with hundreds of columns, I am only providing only 12
 columns. Is it possible to take the mean of every four (or 12) columns
 (value601, value602, value603, value604 etc.in this case) and repeat for
 the hundreds of columns? Thank you.
 
 Sincerely,
 
 Milu
 
 structure(list(value601 = c(10.1738710403442, 3.54112911224365,
 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
 -7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
 ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
 2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
 -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
 c(22.0399188995361,
 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
 18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
 ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
 c(33.9698333740234,
 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
 ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
 c(27.5402088165283,
 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
 ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
 c(9.12979793548584,
 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
 7.55471754074097, -5.58141136169434, -0.566209673881531, 12.3264112472534,
 6.65576601028442)), .Names = c("value601", "value602", "value603",
 "value604", "value605", "value606", "value607", "value608", "value609",
 "value610", "value611", "value612"), row.names = c("1", "2",
 "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
 
   [[alternative HTML version deleted]]
 
 __
 R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
 https://stat.ethz.ch/mailman/listinfo/r-help
 PLEASE do read the posting guide http://www.R-project.org/posti
 ng-guide.html
 and provide commented, minimal, self-contained, reproducible code.
 
 
>>> 
>>> 
>>> --
>>> Dan Dalthorp, PhD
>>> USGS Forest and Rangeland Ecosystem Science Center
>>> Forest Sciences Lab, Rm 189
>>> 3200 

Re: [R] Average every 4 columns

2016-11-09 Thread David Winsemius

> On Nov 9, 2016, at 9:00 AM, Miluji Sb  wrote:
> 
> Thanks a lot for your quick reply. I made a mistake in the question, I
> meant to ask every 4 (or 12) rows not columns. Apologies. Thanks again!

Then try matrix( sapply( split( x , 0:(dim(x)[2]/4-1)*4+1] ), mean) 

Again assuming that dim(x)[1] is evenly divisible by 4. (It's not clear if you 
wanted these means "within columns" or "blocks defined by rows". This is 
lightly tested but should provide the latter. 

sapply( split ( unlist(x) , 0:(dim(x)[2]/4-1)*4+1 ), mean)
   159 
19.44819 19.22003 19.12812 

> 
> Sincerely,
> 
> Milu
> 
> On Wed, Nov 9, 2016 at 5:45 PM, Dalthorp, Daniel  wrote:
> 
>> Hi Milu,
>> The following should work for an array x (provided dim(x)[2] is divisible
>> by 4):
>> 
>> colMeans(x[,
>> 
>> -Dan
>> 
>> On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:
>> 
>>> Dear all,
>>> 
>>> I have a dataset with hundreds of columns, I am only providing only 12
>>> columns. Is it possible to take the mean of every four (or 12) columns
>>> (value601, value602, value603, value604 etc.in this case) and repeat for
>>> the hundreds of columns? Thank you.
>>> 
>>> Sincerely,
>>> 
>>> Milu
>>> 
>>> structure(list(value601 = c(10.1738710403442, 3.54112911224365,
>>> 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
>>> -7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
>>> ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
>>> 2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
>>> -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
>>> c(22.0399188995361,
>>> 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
>>> 18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
>>> 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
>>> 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
>>> 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
>>> ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
>>> 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
>>> 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
>>> c(33.9698333740234,
>>> 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
>>> 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
>>> 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
>>> 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
>>> 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
>>> ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
>>> 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
>>> 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
>>> c(27.5402088165283,
>>> 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
>>> 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
>>> 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
>>> 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
>>> 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
>>> ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
>>> 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
>>> 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
>>> c(9.12979793548584,
>>> 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
>>> 7.55471754074097, -5.58141136169434, -0.566209673881531, 12.3264112472534,
>>> 6.65576601028442)), .Names = c("value601", "value602", "value603",
>>> "value604", "value605", "value606", "value607", "value608", "value609",
>>> "value610", "value611", "value612"), row.names = c("1", "2",
>>> "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
>>> 
>>>[[alternative HTML version deleted]]
>>> 
>>> __
>>> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide http://www.R-project.org/posti
>>> ng-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>> 
>>> 
>> 
>> 
>> --
>> Dan Dalthorp, PhD
>> USGS Forest and Rangeland Ecosystem Science Center
>> Forest Sciences Lab, Rm 189
>> 3200 SW Jefferson Way
>> Corvallis, OR 97331
>> ph: 541-750-0953
>> ddalth...@usgs.gov
>> 
>> 
> 
>   [[alternative HTML version deleted]]
> 
> __
> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

David 

Re: [R] Average every 4 columns

2016-11-09 Thread Dalthorp, Daniel
Better is...

rowMeans(x[0:((dim(x)[1]-1)/4)*4+1, ])

On Wed, Nov 9, 2016 at 9:00 AM, Miluji Sb  wrote:

> Thanks a lot for your quick reply. I made a mistake in the question, I
> meant to ask every 4 (or 12) rows not columns. Apologies. Thanks again!
>
> Sincerely,
>
> Milu
>
> On Wed, Nov 9, 2016 at 5:45 PM, Dalthorp, Daniel 
> wrote:
>
>> Hi Milu,
>> The following should work for an array x (provided dim(x)[2] is divisible
>> by 4):
>>
>> colMeans(x[,0:(dim(x)[2]/4-1)*4+1])
>>
>> -Dan
>>
>> On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:
>>
>>> Dear all,
>>>
>>> I have a dataset with hundreds of columns, I am only providing only 12
>>> columns. Is it possible to take the mean of every four (or 12) columns
>>>  (value601, value602, value603, value604 etc.in this case) and repeat
>>> for
>>> the hundreds of columns? Thank you.
>>>
>>> Sincerely,
>>>
>>> Milu
>>>
>>> structure(list(value601 = c(10.1738710403442, 3.54112911224365,
>>> 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
>>> -7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
>>> ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
>>> 2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
>>> -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
>>> c(22.0399188995361,
>>> 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
>>> 18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
>>> 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
>>> 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
>>> 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
>>> ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
>>> 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
>>> 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
>>> c(33.9698333740234,
>>> 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
>>> 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
>>> 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
>>> 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
>>> 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
>>> ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
>>> 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
>>> 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
>>> c(27.5402088165283,
>>> 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
>>> 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
>>> 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
>>> 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
>>> 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
>>> ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
>>> 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
>>> 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
>>> c(9.12979793548584,
>>> 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
>>> 7.55471754074097, -5.58141136169434, -0.566209673881531,
>>> 12.3264112472534,
>>> 6.65576601028442)), .Names = c("value601", "value602", "value603",
>>> "value604", "value605", "value606", "value607", "value608", "value609",
>>> "value610", "value611", "value612"), row.names = c("1", "2",
>>> "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
>>>
>>> [[alternative HTML version deleted]]
>>>
>>> __
>>> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide http://www.R-project.org/posti
>>> ng-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>>
>>
>>
>> --
>> Dan Dalthorp, PhD
>> USGS Forest and Rangeland Ecosystem Science Center
>> Forest Sciences Lab, Rm 189
>> 3200 SW Jefferson Way
>> Corvallis, OR 97331
>> ph: 541-750-0953
>> ddalth...@usgs.gov
>>
>>
>


-- 
Dan Dalthorp, PhD
USGS Forest and Rangeland Ecosystem Science Center
Forest Sciences Lab, Rm 189
3200 SW Jefferson Way
Corvallis, OR 97331
ph: 541-750-0953
ddalth...@usgs.gov

[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] Average every 4 columns

2016-11-09 Thread Dalthorp, Daniel
rowMeans(x[0:(dim(x)[1]/4-1)*4+1, ])

On Wed, Nov 9, 2016 at 9:00 AM, Miluji Sb  wrote:

> Thanks a lot for your quick reply. I made a mistake in the question, I
> meant to ask every 4 (or 12) rows not columns. Apologies. Thanks again!
>
> Sincerely,
>
> Milu
>
> On Wed, Nov 9, 2016 at 5:45 PM, Dalthorp, Daniel 
> wrote:
>
>> Hi Milu,
>> The following should work for an array x (provided dim(x)[2] is divisible
>> by 4):
>>
>> colMeans(x[,0:(dim(x)[2]/4-1)*4+1])
>>
>> -Dan
>>
>> On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:
>>
>>> Dear all,
>>>
>>> I have a dataset with hundreds of columns, I am only providing only 12
>>> columns. Is it possible to take the mean of every four (or 12) columns
>>>  (value601, value602, value603, value604 etc.in this case) and repeat
>>> for
>>> the hundreds of columns? Thank you.
>>>
>>> Sincerely,
>>>
>>> Milu
>>>
>>> structure(list(value601 = c(10.1738710403442, 3.54112911224365,
>>> 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
>>> -7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
>>> ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
>>> 2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
>>> -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
>>> c(22.0399188995361,
>>> 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
>>> 18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
>>> 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
>>> 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
>>> 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
>>> ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
>>> 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
>>> 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
>>> c(33.9698333740234,
>>> 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
>>> 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
>>> 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
>>> 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
>>> 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
>>> ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
>>> 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
>>> 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
>>> c(27.5402088165283,
>>> 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
>>> 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
>>> 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
>>> 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
>>> 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
>>> ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
>>> 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
>>> 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
>>> c(9.12979793548584,
>>> 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
>>> 7.55471754074097, -5.58141136169434, -0.566209673881531,
>>> 12.3264112472534,
>>> 6.65576601028442)), .Names = c("value601", "value602", "value603",
>>> "value604", "value605", "value606", "value607", "value608", "value609",
>>> "value610", "value611", "value612"), row.names = c("1", "2",
>>> "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
>>>
>>> [[alternative HTML version deleted]]
>>>
>>> __
>>> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide http://www.R-project.org/posti
>>> ng-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>>
>>
>>
>> --
>> Dan Dalthorp, PhD
>> USGS Forest and Rangeland Ecosystem Science Center
>> Forest Sciences Lab, Rm 189
>> 3200 SW Jefferson Way
>> Corvallis, OR 97331
>> ph: 541-750-0953
>> ddalth...@usgs.gov
>>
>>
>


-- 
Dan Dalthorp, PhD
USGS Forest and Rangeland Ecosystem Science Center
Forest Sciences Lab, Rm 189
3200 SW Jefferson Way
Corvallis, OR 97331
ph: 541-750-0953
ddalth...@usgs.gov

[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] Average every 4 columns

2016-11-09 Thread Miluji Sb
Thanks a lot for your quick reply. I made a mistake in the question, I
meant to ask every 4 (or 12) rows not columns. Apologies. Thanks again!

Sincerely,

Milu

On Wed, Nov 9, 2016 at 5:45 PM, Dalthorp, Daniel  wrote:

> Hi Milu,
> The following should work for an array x (provided dim(x)[2] is divisible
> by 4):
>
> colMeans(x[,0:(dim(x)[2]/4-1)*4+1])
>
> -Dan
>
> On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:
>
>> Dear all,
>>
>> I have a dataset with hundreds of columns, I am only providing only 12
>> columns. Is it possible to take the mean of every four (or 12) columns
>>  (value601, value602, value603, value604 etc.in this case) and repeat for
>> the hundreds of columns? Thank you.
>>
>> Sincerely,
>>
>> Milu
>>
>> structure(list(value601 = c(10.1738710403442, 3.54112911224365,
>> 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
>> -7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
>> ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
>> 2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
>> -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
>> c(22.0399188995361,
>> 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
>> 18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
>> 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
>> 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
>> 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
>> ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
>> 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
>> 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
>> c(33.9698333740234,
>> 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
>> 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
>> 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
>> 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
>> 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
>> ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
>> 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
>> 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
>> c(27.5402088165283,
>> 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
>> 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
>> 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
>> 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
>> 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
>> ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
>> 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
>> 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
>> c(9.12979793548584,
>> 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
>> 7.55471754074097, -5.58141136169434, -0.566209673881531, 12.3264112472534,
>> 6.65576601028442)), .Names = c("value601", "value602", "value603",
>> "value604", "value605", "value606", "value607", "value608", "value609",
>> "value610", "value611", "value612"), row.names = c("1", "2",
>> "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
>>
>> [[alternative HTML version deleted]]
>>
>> __
>> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posti
>> ng-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>>
>
>
> --
> Dan Dalthorp, PhD
> USGS Forest and Rangeland Ecosystem Science Center
> Forest Sciences Lab, Rm 189
> 3200 SW Jefferson Way
> Corvallis, OR 97331
> ph: 541-750-0953
> ddalth...@usgs.gov
>
>

[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] Average every 4 columns

2016-11-09 Thread Dalthorp, Daniel
Hi Milu,
The following should work for an array x (provided dim(x)[2] is divisible
by 4):

colMeans(x[,0:(dim(x)[2]/4-1)*4+1])

-Dan

On Wed, Nov 9, 2016 at 8:29 AM, Miluji Sb  wrote:

> Dear all,
>
> I have a dataset with hundreds of columns, I am only providing only 12
> columns. Is it possible to take the mean of every four (or 12) columns
>  (value601, value602, value603, value604 etc.in this case) and repeat for
> the hundreds of columns? Thank you.
>
> Sincerely,
>
> Milu
>
> structure(list(value601 = c(10.1738710403442, 3.54112911224365,
> 12.9192342758179, 3.17447590827942, 11.7332258224487, 7.68282270431519,
> -7.11564493179321, 0.987620949745178, 13.0476207733154, 6.36939525604248
> ), value602 = c(13.0642414093018, 5.53129482269287, 16.0519638061523,
> 2.88946437835693, 14.9204912185669, 9.42428588867188, -6.80674123764038,
> -0.614241063594818, 16.7947769165039, 7.9541072845459), value603 =
> c(22.0399188995361,
> 14.398024559021, 24.9523792266846, 12.0878629684448, 23.6459674835205,
> 18.3277816772461, -2.54092741012573, 10.5550804138184, 25.1016540527344,
> 16.2166938781738), value604 = c(27.7165412902832, 20.3255825042725,
> 30.8430004119873, 16.6856250762939, 29.2485408782959, 24.3775005340576,
> 6.47758340835571, 15.5897912979126, 30.7387924194336, 22.3637084960938
> ), value605 = c(31.6644763946533, 23.4093952178955, 35.1488723754883,
> 19.7132263183594, 33.3924179077148, 29.5846366882324, 10.2083873748779,
> 19.3551616668701, 35.3076629638672, 27.4299201965332), value606 =
> c(33.9698333740234,
> 26.8574161529541, 36.8900833129883, 22.8604583740234, 34.8642921447754,
> 33.8158760070801, 14.7055835723877, 22.1144580841064, 37.0545425415039,
> 32.1087913513184), value607 = c(36.0279846191406, 26.9297180175781,
> 38.2701225280762, 23.2643146514893, 36.7398796081543, 34.1216125488281,
> 17.1387901306152, 24.0419750213623, 37.8542327880859, 32.7677421569824
> ), value608 = c(34.0242347717285, 25.7720966339111, 36.4897193908691,
> 22.0332260131836, 34.8011703491211, 32.6856842041016, 16.6232261657715,
> 21.5571365356445, 36.1491546630859, 31.1716938018799), value609 =
> c(27.5402088165283,
> 21.7590408325195, 30.5214176177979, 18.4252090454102, 29.1156253814697,
> 26.9878330230713, 12.4962501525879, 17.7259578704834, 30.9099159240723,
> 25.4832077026367), value610 = c(23.4706859588623, 17.0126209259033,
> 26.8166942596436, 15.297459602356, 25.1733055114746, 23.5616931915283,
> 8.86995983123779, 13.5793552398682, 27.5732250213623, 22.1691932678223
> ), value611 = c(14.5820417404175, 9.08279132843018, 17.8419170379639,
> 8.36016654968262, 16.5633754730225, 14.8123331069946, 1.32095837593079,
> 5.73408317565918, 18.9752082824707, 13.572542236), value612 =
> c(9.12979793548584,
> 2.79943537712097, 11.6504030227661, 2.21584677696228, 10.5404834747314,
> 7.55471754074097, -5.58141136169434, -0.566209673881531, 12.3264112472534,
> 6.65576601028442)), .Names = c("value601", "value602", "value603",
> "value604", "value605", "value606", "value607", "value608", "value609",
> "value610", "value611", "value612"), row.names = c("1", "2",
> "3", "4", "5", "6", "7", "8", "9", "10"), class = "data.frame")
>
> [[alternative HTML version deleted]]
>
> __
> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/
> posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
>


-- 
Dan Dalthorp, PhD
USGS Forest and Rangeland Ecosystem Science Center
Forest Sciences Lab, Rm 189
3200 SW Jefferson Way
Corvallis, OR 97331
ph: 541-750-0953
ddalth...@usgs.gov

[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.