C program for Quantitative Analysis of given data
C program for various statistical descriptions (Mean, Median, Mode,variance, standard deviation) of data and comments about characteristics of data. (i.e. Symmetric or skewed distributed)
Code:
#include <stdio.h>
#include <stdlib.h>
#include<math.h>
struct entry{
int value;
int frequency;
int meandiffs;
};
int main()
{
int n,i=0,j=0,temp=0,ci=0,x=0,larfrei=0;
float mean=0.0,median=0.0,variance=0.0;
int sig=0;
printf("Enter Number of Values:");
scanf("%d",&n);
struct entry *v = (struct entry*) malloc(n*sizeof(struct entry));
int *aray = (int*)malloc(n*sizeof(int));
printf("Enter Values: ");
for(i=0;i<n;i++){
scanf("%d",&aray[i]);
mean=mean+aray[i];
v[i].value=0;
v[i].frequency=0;
v[i].meandiffs=0;
}
mean = mean / n;
printf("Mean is: %.2f\n",mean);
for(i=0;i<n-1;i++){
for(j=0;j<n-1;j++){
if(aray[j]>aray[j+1]){
temp = aray[j];
aray[j]=aray[j+1];
aray[j+1]=temp;
}}}
if(sizeof(aray)%2==0){
median = ((float)aray[(n-1)/2]+(float)aray[(n/2)])/2;
}
else{median = aray[(n/2)];}
printf("Median is: %.2f\n",median);
v[0].value=aray[0];v[0].frequency=1;ci++;
for(i=1;i<n;i++){
sig=0;
for(x=0;x<ci;x++){
if(v[x].value==aray[i]){v[x].frequency++;sig=1;}
}
if(!sig){
v[ci].value=aray[i];v[ci].frequency=1;ci++;
}
}
printf("Value \tFrequency \t(X-Mean) \t(X-Mean)^2\n");
for(i=0;i<ci;i++){
v[i].meandiffs=pow((v[i].value-mean),2)*v[i].frequency;
variance = variance + v[i].meandiffs;
printf(" %d\t %d\t\t %.2f\t\t%.2f\n",v[i].value,v[i].frequency,v[i].value-mean,pow((v[i].value-mean),2));
if(v[i].frequency > v[larfrei].frequency){larfrei = i;}
}
if(v[larfrei].frequency==1){printf("All Numbers Have Same Frequency:1\n");}
else{
printf("Largest Frequency Number: %d Having Frequency: %d\n",v[larfrei].value,v[larfrei].frequency);
}
printf("Variance is: %.2f\n",round((variance/n)));
printf("Standard Deviation is: %.2f\n\n",round((sqrt(variance/n))));
if(mean>median){printf("Characteristic of Data: Data is Right Skewed\n");}
else if(mean<median){printf("Characteristic of Data: Data is Left Skewed\n");}
else{printf("Characteristic of Data: Data is Symmetric\n");}
}
Comments
Post a Comment