Encuentre el promedio de un NSMutableArray con valueForKeyPath

Actualmente estoy tratando de encontrar una manera compacta depromedio de una matriz. La solución obvia es sumar la matriz, luego dividir por el número de elementos. Sin embargo, me he encontrado con un método en el sitio web para desarrolladores de Apple que afirma que esto se puede hacer de una manera más simple utilizando valueForKeyPath. Esto está vinculado aquí:

http://developer.apple.com/library/ios/#documentation/cocoa/conceptual/KeyValueCoding/Articles/CollectionOperators.html

Aquí está el ejemplo en el que estoy trabajando actualmente para intentar que funcione:

-(void)arrayAverager
{
   NSMutableArray *myArray = [NSMutableArray arrayWithCapacity:25];
   [myArray addObject:[NSNumber numberWithInteger:myValue]];
   NSNumber *averageValue = [myArray valueForKeyPath:@"@avg.self"];
   NSLog(@"avg  = %@", averageValue);

} 

losproblema es: en lugar de promediar la matriz, simplemente imprime los elementos de la matriz 1 por 1.

ACTUALIZAR

-(void) pixelAverager

{
    //Put x-coordinate value of all wanted pixels into an array
    NSMutableArray *xCoordinateArray = [NSMutableArray arrayWithCapacity:25];
    [xCoordinateArray addObject:[NSNumber numberWithInteger:xCoordinate]];
    NSLog(@"avg = %@", [xCoordinateArray valueForKeyPath:@"@avg.intValue"]);
 }

Respuestas a la pregunta(2)

Su respuesta a la pregunta