Hackerrank Mean, Var, and Std Solution

Hackerrank Mean, Var, and Std Solution

mean

The mean tool computes the arithmetic mean along the specified axis.

import numpy

my_array = numpy.array([ [1, 2], [3, 4] ])

print numpy.mean(my_array, axis = 0)        #Output : [ 2.  3.]
print numpy.mean(my_array, axis = 1)        #Output : [ 1.5  3.5]
print numpy.mean(my_array, axis = None)     #Output : 2.5
print numpy.mean(my_array)                  #Output : 2.5

By default, the axis is None. Therefore, it computes the mean of the flattened array.

var

The var tool computes the arithmetic variance along the specified axis.

import numpy

my_array = numpy.array([ [1, 2], [3, 4] ])

print numpy.var(my_array, axis = 0)         #Output : [ 1.  1.]
print numpy.var(my_array, axis = 1)         #Output : [ 0.25  0.25]
print numpy.var(my_array, axis = None)      #Output : 1.25
print numpy.var(my_array)                   #Output : 1.25

By default, the axis is None. Therefore, it computes the variance of the flattened array.

std

The std tool computes the arithmetic standard deviation along the specified axis.

import numpy

my_array = numpy.array([ [1, 2], [3, 4] ])

print numpy.std(my_array, axis = 0)         #Output : [ 1.  1.]
print numpy.std(my_array, axis = 1)         #Output : [ 0.5  0.5]
print numpy.std(my_array, axis = None)      #Output : 1.11803398875
print numpy.std(my_array)                   #Output : 1.11803398875

By default, the axis is None. Therefore, it computes the standard deviation of the flattened array.


Task

You are given a 2-D array of size X.
Your task is to find:

  1. The mean along axis
  2. The var along axis
  3. The std along axis

Input Format

The first line contains the space separated values of  and .
The next  lines contains  space separated integers.

Output Format

First, print the mean.
Second, print the var.
Third, print the std.

Sample Input

2 2
1 2
3 4

Sample Output

[ 1.5  3.5]
[ 1.  1.]
1.11803398875

Solution in python3

Approach 1.

python
import numpy N,M = map(int,input().split()) A = numpy.array([input().split() for _ in range(N)], int) print(A.mean(axis=1)) print(A.var(axis=0)) print(A.std())

Approach 2.

python
import numpy a = numpy.array([input().split() for _ in range(int(input().split()[0]))],int) print(numpy.mean(a,axis=1),numpy.var(a,axis=0),numpy.std(a),sep="\n")

Approach 3.

python
import numpy n,m=map(int,input().split()) a=numpy.array([list(map(int,input().split())) for i in range(n)]) print(numpy.mean(a,axis=1)) print(numpy.var(a,axis=0)) print(numpy.std(a,None))

Solution in python

Approach 1.

python
import numpy N, M = map(int, raw_input().split()) A = numpy.array([map(int, raw_input().split()) for i in range(N)]) print numpy.mean(A,1) print numpy.var(A,0) print numpy.std(A)

Approach 2.

python
import numpy N, M = map(int, raw_input().split()) A = numpy.array([map(int, raw_input().split())for _ in range(N)]) print numpy.mean(A, axis = 1) print numpy.var(A, axis = 0) print numpy.std(A)

Approach 3.

python
import numpy n,m = map(int,raw_input().split()) A = [] for _ in range(n): A.append(map(int,raw_input().split())) A = numpy.array(A) print numpy.mean(A,axis = 1) print numpy.var(A,axis = 0) print numpy.std(A)

Subscribe to The Poor Coder | Algorithm Solutions

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe