Normal distribution, Advanced Statistics

Assignment Help:

Your first task is to realize two additional data generation functions. Firstly, extend the system to generate random integral numbers based on normal distribution. You need to study Data Generator's structure and extend number generation type to activate normal distribution. The interface needs to obtain both mean and sigma as shown in Figure 1. Consider the code found here which is reproduced below for your convenience:
function gauss() {
// N(0,1)
// returns random number with normal distribution:
// mean=0
// std dev=1

// auxiliary vars
$x=random_0_1();
$y=random_0_1();
// two independent variables with normal distribution N(0,1)
$u=sqrt(-2*log($x))*cos(2*pi()*$y);
$v=sqrt(-2*log($x))*sin(2*pi()*$y);
// i will return only one, couse only one needed
return $u;
}
function gauss_ms($m=0.0,$s=1.0) {
// N(m,s)
// returns random number with normal distribution:
// mean=m
// std dev=s
return gauss()*$s+$m;
}
function random_0_1() {
// auxiliary function
// returns random number with flat distribution from 0 to 1
return (float)rand()/(float)getrandmax();
}
Notice that the return value of the above code is a floating value. You can round it to nearest integer by adding a "rounding option" to the interface.

773_normal distribution.png

Figure: Functions added to Data Generator

Next, realize one form of skewed distribution that approximates Pareto Principle. Consider a skewed access pattern often evidenced in data applications such that s percent of accesses would go to (100 - s) percent of data items. For instance, a typical "80-20 rule" for 1000 accesses over 500 data items means that about 800 accesses (80% of accesses) go to a specific set of about 100 items (20% of data items). In our case, data generation should be based on independent repeated trials, not as all trials once in a batch. Therefore, implementing strict Pareto Principle is difficult. Instead, we can approximate access pattern generation by the following method:

• skew generation function receives a range r and a skew factor s as parameter, both of which are integers and r must be larger 1 while s must be between 50 and 100.

• data elements are considered to have unique IDs in the range [1, r], in which elements are listed in an increasing order of IDs such as 1, 2, 3, ..., r.

• skew generation function produces an integer value between 1 and r representing a data access in the following manner:

1. skewed access will go to the top portion of the elements, that is, those between 1 and t = r × (100 - s) / 100.

2. draw a random number p from uniform distribution between 0 and 99.

3. if p falls in less than s, i.e., [0, s - 1], the top portion of elements [1, t] is accessed.

4. otherwise the access goes to [t + 1, r].

Above illustration should be sufficient to provide you with the concrete requirement for the two frequently utilized data generation. Figure 1 and 2 shows interface and sample output respectively. In these figures, rounding to integer is applied automatically. A checkbox should be added to the interface so that users can choose whether values generated are rounded or not. Notice that this development is not from scratch, but is "reverse engineering" of already developed product. Addition of the above functions to Data Generator is easily done. You should look into the contents of docs/data_types.php.

2439_normal distribution1.png

Figure: Generated data example


Related Discussions:- Normal distribution

Huffman coding based compression, Huffman code is used to compress data fil...

Huffman code is used to compress data file, where the data is represented as a sequence of characters. Huffman's greedy algorithm uses a table giving how often each character occur

Cartogram, Cartogram : It is the diagram in which descriptive statistical i...

Cartogram : It is the diagram in which descriptive statistical information is displayed on the geographical map by the means of shading, different symbols or in some other possibly

Canonical correlation analysis, Canonical correlation analysis : A process ...

Canonical correlation analysis : A process of analysis for investigating the relationship between the two groups of variables, by ?nding the linear functions of one of the sets of

Define non linear mapping (nlm), Non linear mapping (NLM ) is a technique f...

Non linear mapping (NLM ) is a technique for obtaining a low-dimensional representation of the set of multivariate data, which operates by minimizing a function of the differences

Band matrix, Band matrix: A matrix which has its non zero elements arrange...

Band matrix: A matrix which has its non zero elements arranged uniformly near to the diagonal, so that aij = 0 if (i - j)> ml or (j - i)> mu where aij are the elements of matrix a

Coincidences, Coincidences : Astonishing concurrence of the events, perceiv...

Coincidences : Astonishing concurrence of the events, perceived as meaningfully related, with no apparent causal connection. Such type of events abounds in everyday life and is oft

Command-line options, Command-Line options Compression: C++:  ./comp...

Command-Line options Compression: C++:  ./compress  -f  myfile.txt  [-o  myfile.hzip  -s Java:  sh  compress.sh  -f  myfile.txt  [-o  myfile.hzip  -s] Decompression:

Statistical and Numerical methods using C ++, Write a c++ program to find t...

Write a c++ program to find the sum of 0.123 ? 10 3 and 0.456 ? 10 2 and write the result inthree significant digits.

Design, Difference between tretment design and experimental design

Difference between tretment design and experimental design

General location model, The model for data containing continuous and catego...

The model for data containing continuous and categorical variables both.The categorical data are summarized by the contingency table and their marginal distribution, 182by the mult

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd