Gaussian and binomial distribution classes
Project description
fsc-distributions package
Package that contains classes for binomial and gaussian distributions, created while taking the AI Programming with Python - Bertelsmann course on Udacity
Installation instructions
pip install fsc_distributions
Gaussian class
Gaussian distribution class for calculating and visualizing a Gaussian distribution.
Attributes: mean (float) representing the mean value of the distribution
stdev (float) representing the standard deviation of the distribution
data_list (list of floats) a list of floats extracted from the data file
Methods: read_data_file(file_name) Function to read in data from a txt file. The txt file should have one number (float) per line. The numbers are stored in the data attribute. Args: file_name (string): name of a file to read from
Returns:
None
calculate_mean() Function to calculate the mean of the data set.
Args:
None
Returns:
float: mean of the data set
calculate_stdev(sample=True) Function to calculate the standard deviation of the data set.
Args:
sample (bool): whether the data represents a sample or population
Returns:
float: standard deviation of the data set
plot_histogram() Function to output a histogram of the instance variable data using matplotlib pyplot library.
Args:
None
Returns:
None
pdf(x) Probability density function calculator for the gaussian distribution.
Args:
x (float): point for calculating the probability density function
Returns:
float: probability density function output
plot_histogram_pdf(n_spaces = 50) Function to plot the normalized histogram of the data and a plot of the probability density function along the same range
Args:
n_spaces (int): number of data points
Returns:
list: x values for the pdf plot
list: y values for the pdf plot
from fsc_distributions import Gaussian
gaussian1 = Gaussian(25,2) #create a new Gaussian object and initialize the mean with 25 and stdev with 2
gaussian2 = Gaussian(35,8) #create a new Gaussian object and initialize the mean with 25 and stdev with 8
gaussian3 = gaussian1 + gaussian2 #sum the two distributions with an overloaded add operator
Binomial class
Binomial distribution class for calculating and visualizing a Binomial distribution.
Attributes: mean (float) representing the mean value of the distribution
stdev (float) representing the standard deviation of the distribution
data_list (list of floats) a list of floats to be extracted from the data file
p (float) representing the probability of an event occurring
n (int) number of trials
Methods: read_data_file(file_name) Function to read in data from a txt file. The txt file should have one number (float) per line. The numbers are stored in the data attribute. Args: file_name (string): name of a file to read from
Returns:
None
calculate_mean() Function to calculate the mean from p and n
Args:
None
Returns:
float: mean of the data set
calculate_stdev(sample=True) Function to calculate the standard deviation from p and n.
Args:
None
Returns:
float: standard deviation of the data set
replace_stats_with_data() Function to calculate p and n from the data set
Args:
None
Returns:
float: the p value
float: the n value
plot_bar() Function to output a histogram of the instance variable data using matplotlib pyplot library.
Args:
None
Returns:
None
pdf(k) Probability density function calculator for the binomial distribution.
Args:
k (float): point for calculating the probability density function
Returns:
float: probability density function output
plot_bar_pdf()Function to plot the pdf of the binomial distribution
Args:
None
Returns:
list: x values for the pdf plot
list: y values for the pdf plot
from fsc_distributions import Binomial
binomial1 = Binomial(0.5,20) #create a new Binomial object and initialize the prob with 0.5 and size with 20
binomial2 = Binomial(0.5,30) #create a new Binomial object and initialize the prob with 0.5 and size with 30
binomial3 = binomial1 + binomial2 #sum the two distributions with an overloaded add operator (only sums binomials with the same p)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file fsc_distributions-1.2.tar.gz.
File metadata
- Download URL: fsc_distributions-1.2.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7a63263efa6f3601b098a83bb26c3e9df8bf0c8530fa66d73d29310e1d5af3f6
|
|
| MD5 |
6dd20b849b91f7a7ba4307d2afac80d2
|
|
| BLAKE2b-256 |
37c79a75fb61f7af561b0a7f5c56a39d661b3088511df74b8a9c51424248082c
|