practice-distribution-msrk 1.6
Gaussian distributions

This python package consists of various types of distributions and functions for obtaining 
some statistical calculations like mean, standard deviation, probability density function 
for each type of distribution and some methods to visualize the distribution into histograms.
The package is divided into different modules where each module consists of classes and 
methods specified for a specific type of distribution. The list of modules are as follows:
1.	General distribution
2.	Gaussian distribution
3.	Binomial distribution
General distribution module:
This module consists of a general distribution class with some attributes and methods. 
This class is created to calculate and visualize a probability distribution. 
This class takes mean (mu_mean) and variance (sigma) of the distribution as arguments. 
The attributes of this class are:
	mean: this is a float value and represents the mean value of the distribution.
	stdev: this is a float value and represents the standard deviation of the
    distribution.
	data_list: this is a list of float values extracted from the given data file.
This class also contains a method (read_data_file) to read data from a .txt file. 
The argument of this function is the file name we have. The text file should have one 
number per line and these numbers are stored in data attribute of the general distribution 
class.
Gaussian distribution module:
This module imports the general distribution class from the general distribution module.
It contains a gaussian distribution class for calculating and visualizing gaussian distribution which is 
inherited from the general distribution class. The initializing function of this class is 
same as general distribution class. The methods present in this class are:
1.  Initializing method: same as general distribution init method
2.  Method for calculating mean of the gaussian distribution which takes gaussian 
instance as argument and returns a float value.
3.	A function to calculate the standard deviation of the data set, takes a bool value
(sample) returns a float value.
4.	Function to output a histogram (plot_histogram) of the instance variable data using 
matplotlib pyplot library. It takes no args and returns none.
5.	A probability density function calculating method for the gaussian distribution (pdf) 
which takes a float attribute x- point for calculating the probability density function
and returns a float value of the pdf output.
6.	Function to plot the normalized histogram of the data and a plot of the probability 
density function along the same range (plot_histogram_pdf). It takes number of data points 
(n_spaces) as argument and returns a list of x as well as Y values for the pdf plot.
7.	__add__: Function to add two gaussian distributions. It takes gaussian instance as 
argument and returns a gaussian distribution.
8.	__repr__: Function to output the characteristics of the gaussian instance. 
Takes no arguments and returns a string: characteristics of the gaussian distribution.
Binomial Distribution module:
This module imports the distribution class from the general distribution module. 
It contains a binomial distribution class for calculating and visualizing binomial 
distribution which is extended from the general distribution class. 
Attributes of binomial distribution class:
This class contains same attributes as that of the general distribution class and 
adding to it:
P: a float value representing the probability of an event occurring.
n: an int value representing the number of trails.
The methods of this class are:
1.	__init__: an initialization method for the class which takes probability and 
no. of trails as arguments and class init method of the general distribution class.
2.	Calculate_mean: Method for calculating mean of the binomial distribution which 
returns a float value of mean of the binomial instance. 
3.	Calculate_stdev: a function to calculate standard deviation from the values of p and n. 
It returns a float value of the standard deviation of the binomial instance taken.
4.	Replace_stats_with_data: This is a method to calculate the values of p and n from the 
dataset. It returns float values of p and n of the given binomial distribution instance.
5.	Plot_bar: function to output the histogram of instance variable data using matplotlib 
pyplot library. It has no arguments and returns none.
6.	Pdf: Probability density function calculator for the binomial distribution. 
It has a point for calculating the pdf as argument (float) and returns 
a float value of the pdf.
7.	Plot_bar_pdf: Function to plot the pdf of the binomial distribution. 
It returns a list of float values of x and y for the pdf plot of the given binomial distribution.
8.	__add__: function to add two binomial distributions with same p value. It takes other binomial 
instance as argument and returns the combined binomial distribution.
9.	__repr__: This is a function to output the characteristics of the binomial instance. 
It has no arguments and returns the characteristics of the binomial distribution as a string.
The __inti.py__: This is the initialization file for the package and each module containing the 
version information and metadata of the created python package.
Instructions to install the package are as follows:
1.	Install python and pip in your system if not previously installed.
2.	Open the command prompt and enter the command: pip install practice_distributions_msrk
Then packages will be installed in your system.