INDIAN MUSIC ANALYTICS USING PROC FORMAT, PROC MEANS, PROC SQL, PROC FREQ, AND PROC PRINT
options nodate nonumber nocenter;
1.Create the data
data music_in_india;
length Genre $30 Region $12 Era $10 Owner $25;
infile datalines dlm='|' dsd truncover;
input Genre :$30. Region :$12. Era :$10. TempoBPM PopularityIndex Owner :$25.;
datalines;
Hindustani Classical|North|Pre-2000|72|78|Saregama
Carnatic|South|Pre-2000|80|74|Saregama
Bollywood|Pan-India|2010s|122|92|T-Series
Folk-Baoul|East|2000s|96|68|Times Music
Sufi/Qawwali|North|2000s|88|81|Saregama
Indie Pop|Pan-India|2020s|110|85|Sony Music India
Ghazal|North|Pre-2000|68|77|Saregama
EDM/Bollywood Remix|Pan-India|2020s|128|83|Zee Music
Hip-Hop/Desi Rap|Pan-India|2020s|98|89|Divine-Independent
Tollywood Filmi (Telugu)|South|2010s|116|84|Aditya Music
Kollywood Filmi (Tamil)|South|2010s|114|82|Sony Music India
Folk-Bihu|Northeast|2000s|104|69|Times Music
;
run;
proc print data=music_in_india;
run;
OUTPUT:
| Obs | Genre | Region | Era | Owner | TempoBPM | PopularityIndex |
|---|---|---|---|---|---|---|
| 1 | Hindustani Classical | North | Pre-2000 | Saregama | 72 | 78 |
| 2 | Carnatic | South | Pre-2000 | Saregama | 80 | 74 |
| 3 | Bollywood | Pan-India | 2010s | T-Series | 122 | 92 |
| 4 | Folk-Baoul | East | 2000s | Times Music | 96 | 68 |
| 5 | Sufi/Qawwali | North | 2000s | Saregama | 88 | 81 |
| 6 | Indie Pop | Pan-India | 2020s | Sony Music India | 110 | 85 |
| 7 | Ghazal | North | Pre-2000 | Saregama | 68 | 77 |
| 8 | EDM/Bollywood Remix | Pan-India | 2020s | Zee Music | 128 | 83 |
| 9 | Hip-Hop/Desi Rap | Pan-India | 2020s | Divine-Independent | 98 | 89 |
| 10 | Tollywood Filmi (Telugu) | South | 2010s | Aditya Music | 116 | 84 |
| 11 | Kollywood Filmi (Tamil) | South | 2010s | Sony Music India | 114 | 82 |
| 12 | Folk-Bihu | Northeast | 2000s | Times Music | 104 | 69 |
2.PROC FORMAT
proc format;
value tempo_cat
low - <90 = 'Slow (<90 BPM)'
90 - 120 = 'Moderate (90-120)'
120 - high = 'Fast (>120)';
value pop_cat
0 - <70 = 'Niche (<70)'
70 - <80 = 'Popular (70-79)'
80 - <90 = 'Hit (80-89)'
90 - high = 'Blockbuster (90+)';
value $region_cat
'North' = 'North India'
'South' = 'South India'
'East' = 'East India'
'West' = 'West India'
'Northeast' = 'Northeast India'
'Pan-India' = 'Pan-India / National';
run;
/* apply formats in a view for display convenience */
data music_fmt;
set music_in_india;
length TempoBucket $20 PopBucket $18 RegionLabel $22;
TempoBucket = put(TempoBPM, tempo_cat.);
PopBucket = put(PopularityIndex, pop_cat.);
RegionLabel = put(Region, $region_cat.);
run;
proc print data=music_fmt;
run;
OUTPUT:
| Obs | Genre | Region | Era | Owner | TempoBPM | PopularityIndex | TempoBucket | PopBucket | RegionLabel |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Hindustani Classical | North | Pre-2000 | Saregama | 72 | 78 | Slow (<90 BPM) | Popular (70-79) | North India |
| 2 | Carnatic | South | Pre-2000 | Saregama | 80 | 74 | Slow (<90 BPM) | Popular (70-79) | South India |
| 3 | Bollywood | Pan-India | 2010s | T-Series | 122 | 92 | Fast (>120) | Blockbuster (90+) | Pan-India / National |
| 4 | Folk-Baoul | East | 2000s | Times Music | 96 | 68 | Moderate (90-120) | Niche (<70) | East India |
| 5 | Sufi/Qawwali | North | 2000s | Saregama | 88 | 81 | Slow (<90 BPM) | Hit (80-89) | North India |
| 6 | Indie Pop | Pan-India | 2020s | Sony Music India | 110 | 85 | Moderate (90-120) | Hit (80-89) | Pan-India / National |
| 7 | Ghazal | North | Pre-2000 | Saregama | 68 | 77 | Slow (<90 BPM) | Popular (70-79) | North India |
| 8 | EDM/Bollywood Remix | Pan-India | 2020s | Zee Music | 128 | 83 | Fast (>120) | Hit (80-89) | Pan-India / National |
| 9 | Hip-Hop/Desi Rap | Pan-India | 2020s | Divine-Independent | 98 | 89 | Moderate (90-120) | Hit (80-89) | Pan-India / National |
| 10 | Tollywood Filmi (Telugu) | South | 2010s | Aditya Music | 116 | 84 | Moderate (90-120) | Hit (80-89) | South India |
| 11 | Kollywood Filmi (Tamil) | South | 2010s | Sony Music India | 114 | 82 | Moderate (90-120) | Hit (80-89) | South India |
| 12 | Folk-Bihu | Northeast | 2000s | Times Music | 104 | 69 | Moderate (90-120) | Niche (<70) | Northeast India |
3.PROC MEANS using BY groups
proc sort data=music_in_india out=music_bygenre;
by Genre;
run;
proc print data=music_bygenre;
run;
OUTPUT:
| Obs | Genre | Region | Era | Owner | TempoBPM | PopularityIndex |
|---|---|---|---|---|---|---|
| 1 | Bollywood | Pan-India | 2010s | T-Series | 122 | 92 |
| 2 | Carnatic | South | Pre-2000 | Saregama | 80 | 74 |
| 3 | EDM/Bollywood Remix | Pan-India | 2020s | Zee Music | 128 | 83 |
| 4 | Folk-Baoul | East | 2000s | Times Music | 96 | 68 |
| 5 | Folk-Bihu | Northeast | 2000s | Times Music | 104 | 69 |
| 6 | Ghazal | North | Pre-2000 | Saregama | 68 | 77 |
| 7 | Hindustani Classical | North | Pre-2000 | Saregama | 72 | 78 |
| 8 | Hip-Hop/Desi Rap | Pan-India | 2020s | Divine-Independent | 98 | 89 |
| 9 | Indie Pop | Pan-India | 2020s | Sony Music India | 110 | 85 |
| 10 | Kollywood Filmi (Tamil) | South | 2010s | Sony Music India | 114 | 82 |
| 11 | Sufi/Qawwali | North | 2000s | Saregama | 88 | 81 |
| 12 | Tollywood Filmi (Telugu) | South | 2010s | Aditya Music | 116 | 84 |
proc means data=music_bygenre n mean min p25 median p75 max maxdec=1;
by Genre;
var TempoBPM PopularityIndex;
ods output Summary=means_by_genre;
run;
proc print data=means_by_genre;
run;
OUTPUT:
The MEANS Procedure
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 122.0 92.0 | 122.0 92.0 | 122.0 92.0 | 122.0 92.0 | 122.0 92.0 | 122.0 92.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 80.0 74.0 | 80.0 74.0 | 80.0 74.0 | 80.0 74.0 | 80.0 74.0 | 80.0 74.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 128.0 83.0 | 128.0 83.0 | 128.0 83.0 | 128.0 83.0 | 128.0 83.0 | 128.0 83.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 96.0 68.0 | 96.0 68.0 | 96.0 68.0 | 96.0 68.0 | 96.0 68.0 | 96.0 68.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 104.0 69.0 | 104.0 69.0 | 104.0 69.0 | 104.0 69.0 | 104.0 69.0 | 104.0 69.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 68.0 77.0 | 68.0 77.0 | 68.0 77.0 | 68.0 77.0 | 68.0 77.0 | 68.0 77.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 72.0 78.0 | 72.0 78.0 | 72.0 78.0 | 72.0 78.0 | 72.0 78.0 | 72.0 78.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 98.0 89.0 | 98.0 89.0 | 98.0 89.0 | 98.0 89.0 | 98.0 89.0 | 98.0 89.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 110.0 85.0 | 110.0 85.0 | 110.0 85.0 | 110.0 85.0 | 110.0 85.0 | 110.0 85.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 114.0 82.0 | 114.0 82.0 | 114.0 82.0 | 114.0 82.0 | 114.0 82.0 | 114.0 82.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 88.0 81.0 | 88.0 81.0 | 88.0 81.0 | 88.0 81.0 | 88.0 81.0 | 88.0 81.0 |
| Variable | N | Mean | Minimum | 25th Pctl | Median | 75th Pctl | Maximum |
|---|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 116.0 84.0 | 116.0 84.0 | 116.0 84.0 | 116.0 84.0 | 116.0 84.0 | 116.0 84.0 |
| Obs | Genre | VName_TempoBPM | TempoBPM_N | TempoBPM_Mean | TempoBPM_Min | TempoBPM_P25 | TempoBPM_Median | TempoBPM_P75 | TempoBPM_Max | VName_PopularityIndex | PopularityIndex_N | PopularityIndex_Mean | PopularityIndex_Min | PopularityIndex_P25 | PopularityIndex_Median | PopularityIndex_P75 | PopularityIndex_Max |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Bollywood | TempoBPM | 1 | 122.0 | 122.0 | 122.0 | 122.0 | 122.0 | 122.0 | PopularityIndex | 1 | 92.0 | 92.0 | 92.0 | 92.0 | 92.0 | 92.0 |
| 2 | Carnatic | TempoBPM | 1 | 80.0 | 80.0 | 80.0 | 80.0 | 80.0 | 80.0 | PopularityIndex | 1 | 74.0 | 74.0 | 74.0 | 74.0 | 74.0 | 74.0 |
| 3 | EDM/Bollywood Remix | TempoBPM | 1 | 128.0 | 128.0 | 128.0 | 128.0 | 128.0 | 128.0 | PopularityIndex | 1 | 83.0 | 83.0 | 83.0 | 83.0 | 83.0 | 83.0 |
| 4 | Folk-Baoul | TempoBPM | 1 | 96.0 | 96.0 | 96.0 | 96.0 | 96.0 | 96.0 | PopularityIndex | 1 | 68.0 | 68.0 | 68.0 | 68.0 | 68.0 | 68.0 |
| 5 | Folk-Bihu | TempoBPM | 1 | 104.0 | 104.0 | 104.0 | 104.0 | 104.0 | 104.0 | PopularityIndex | 1 | 69.0 | 69.0 | 69.0 | 69.0 | 69.0 | 69.0 |
| 6 | Ghazal | TempoBPM | 1 | 68.0 | 68.0 | 68.0 | 68.0 | 68.0 | 68.0 | PopularityIndex | 1 | 77.0 | 77.0 | 77.0 | 77.0 | 77.0 | 77.0 |
| 7 | Hindustani Classical | TempoBPM | 1 | 72.0 | 72.0 | 72.0 | 72.0 | 72.0 | 72.0 | PopularityIndex | 1 | 78.0 | 78.0 | 78.0 | 78.0 | 78.0 | 78.0 |
| 8 | Hip-Hop/Desi Rap | TempoBPM | 1 | 98.0 | 98.0 | 98.0 | 98.0 | 98.0 | 98.0 | PopularityIndex | 1 | 89.0 | 89.0 | 89.0 | 89.0 | 89.0 | 89.0 |
| 9 | Indie Pop | TempoBPM | 1 | 110.0 | 110.0 | 110.0 | 110.0 | 110.0 | 110.0 | PopularityIndex | 1 | 85.0 | 85.0 | 85.0 | 85.0 | 85.0 | 85.0 |
| 10 | Kollywood Filmi (Tamil) | TempoBPM | 1 | 114.0 | 114.0 | 114.0 | 114.0 | 114.0 | 114.0 | PopularityIndex | 1 | 82.0 | 82.0 | 82.0 | 82.0 | 82.0 | 82.0 |
| 11 | Sufi/Qawwali | TempoBPM | 1 | 88.0 | 88.0 | 88.0 | 88.0 | 88.0 | 88.0 | PopularityIndex | 1 | 81.0 | 81.0 | 81.0 | 81.0 | 81.0 | 81.0 |
| 12 | Tollywood Filmi (Telugu) | TempoBPM | 1 | 116.0 | 116.0 | 116.0 | 116.0 | 116.0 | 116.0 | PopularityIndex | 1 | 84.0 | 84.0 | 84.0 | 84.0 | 84.0 | 84.0 |
proc sort data=music_in_india out=music_byregera;
by Region Era;
run;
proc print data=music_byregera;
run;
OUTPUT:
| Obs | Genre | Region | Era | Owner | TempoBPM | PopularityIndex |
|---|---|---|---|---|---|---|
| 1 | Folk-Baoul | East | 2000s | Times Music | 96 | 68 |
| 2 | Sufi/Qawwali | North | 2000s | Saregama | 88 | 81 |
| 3 | Hindustani Classical | North | Pre-2000 | Saregama | 72 | 78 |
| 4 | Ghazal | North | Pre-2000 | Saregama | 68 | 77 |
| 5 | Folk-Bihu | Northeast | 2000s | Times Music | 104 | 69 |
| 6 | Bollywood | Pan-India | 2010s | T-Series | 122 | 92 |
| 7 | Indie Pop | Pan-India | 2020s | Sony Music India | 110 | 85 |
| 8 | EDM/Bollywood Remix | Pan-India | 2020s | Zee Music | 128 | 83 |
| 9 | Hip-Hop/Desi Rap | Pan-India | 2020s | Divine-Independent | 98 | 89 |
| 10 | Tollywood Filmi (Telugu) | South | 2010s | Aditya Music | 116 | 84 |
| 11 | Kollywood Filmi (Tamil) | South | 2010s | Sony Music India | 114 | 82 |
| 12 | Carnatic | South | Pre-2000 | Saregama | 80 | 74 |
proc means data=music_byregera n mean std min median max maxdec=1;
by Region Era;
var TempoBPM PopularityIndex;
ods output Summary=means_by_region_era;
run;
proc print data=means_by_region_era;
run;
OUTPUT:
The MEANS Procedure
| Variable | N | Mean | Std Dev | Minimum | Median | Maximum |
|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 96.0 68.0 | . . | 96.0 68.0 | 96.0 68.0 | 96.0 68.0 |
| Variable | N | Mean | Std Dev | Minimum | Median | Maximum |
|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 88.0 81.0 | . . | 88.0 81.0 | 88.0 81.0 | 88.0 81.0 |
| Variable | N | Mean | Std Dev | Minimum | Median | Maximum |
|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 2 2 | 70.0 77.5 | 2.8 0.7 | 68.0 77.0 | 70.0 77.5 | 72.0 78.0 |
| Variable | N | Mean | Std Dev | Minimum | Median | Maximum |
|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 104.0 69.0 | . . | 104.0 69.0 | 104.0 69.0 | 104.0 69.0 |
| Variable | N | Mean | Std Dev | Minimum | Median | Maximum |
|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 122.0 92.0 | . . | 122.0 92.0 | 122.0 92.0 | 122.0 92.0 |
| Variable | N | Mean | Std Dev | Minimum | Median | Maximum |
|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 3 3 | 112.0 85.7 | 15.1 3.1 | 98.0 83.0 | 110.0 85.0 | 128.0 89.0 |
| Variable | N | Mean | Std Dev | Minimum | Median | Maximum |
|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 2 2 | 115.0 83.0 | 1.4 1.4 | 114.0 82.0 | 115.0 83.0 | 116.0 84.0 |
| Variable | N | Mean | Std Dev | Minimum | Median | Maximum |
|---|---|---|---|---|---|---|
TempoBPM PopularityIndex | 1 1 | 80.0 74.0 | . . | 80.0 74.0 | 80.0 74.0 | 80.0 74.0 |
| Obs | Region | Era | VName_TempoBPM | TempoBPM_N | TempoBPM_Mean | TempoBPM_StdDev | TempoBPM_Min | TempoBPM_Median | TempoBPM_Max | VName_PopularityIndex | PopularityIndex_N | PopularityIndex_Mean | PopularityIndex_StdDev | PopularityIndex_Min | PopularityIndex_Median | PopularityIndex_Max |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | East | 2000s | TempoBPM | 1 | 96.0 | . | 96.0 | 96.0 | 96.0 | PopularityIndex | 1 | 68.0 | . | 68.0 | 68.0 | 68.0 |
| 2 | North | 2000s | TempoBPM | 1 | 88.0 | . | 88.0 | 88.0 | 88.0 | PopularityIndex | 1 | 81.0 | . | 81.0 | 81.0 | 81.0 |
| 3 | North | Pre-2000 | TempoBPM | 2 | 70.0 | 2.8 | 68.0 | 70.0 | 72.0 | PopularityIndex | 2 | 77.5 | 0.7 | 77.0 | 77.5 | 78.0 |
| 4 | Northeast | 2000s | TempoBPM | 1 | 104.0 | . | 104.0 | 104.0 | 104.0 | PopularityIndex | 1 | 69.0 | . | 69.0 | 69.0 | 69.0 |
| 5 | Pan-India | 2010s | TempoBPM | 1 | 122.0 | . | 122.0 | 122.0 | 122.0 | PopularityIndex | 1 | 92.0 | . | 92.0 | 92.0 | 92.0 |
| 6 | Pan-India | 2020s | TempoBPM | 3 | 112.0 | 15.1 | 98.0 | 110.0 | 128.0 | PopularityIndex | 3 | 85.7 | 3.1 | 83.0 | 85.0 | 89.0 |
| 7 | South | 2010s | TempoBPM | 2 | 115.0 | 1.4 | 114.0 | 115.0 | 116.0 | PopularityIndex | 2 | 83.0 | 1.4 | 82.0 | 83.0 | 84.0 |
| 8 | South | Pre-2000 | TempoBPM | 1 | 80.0 | . | 80.0 | 80.0 | 80.0 | PopularityIndex | 1 | 74.0 | . | 74.0 | 74.0 | 74.0 |
4.PROC SQL: GROUP BY + HAVING
/* Average popularity and count by Genre, show only strong performers */
proc sql;
create table genre_perf as
select
Genre
, count(*) as N
, mean(PopularityIndex) as AvgPop format=6.2
, mean(TempoBPM) as AvgTempo format=6.1
from music_in_india
group by Genre
having calculated AvgPop >= 75
and calculated N >= 1;
quit;
proc print data=genre_perf;
run;
OUTPUT:
| Obs | Genre | N | AvgPop | AvgTempo |
|---|---|---|---|---|
| 1 | Bollywood | 1 | 92.00 | 122.0 |
| 2 | EDM/Bollywood Remix | 1 | 83.00 | 128.0 |
| 3 | Ghazal | 1 | 77.00 | 68.0 |
| 4 | Hindustani Classical | 1 | 78.00 | 72.0 |
| 5 | Hip-Hop/Desi Rap | 1 | 89.00 | 98.0 |
| 6 | Indie Pop | 1 | 85.00 | 110.0 |
| 7 | Kollywood Filmi (Tamil) | 1 | 82.00 | 114.0 |
| 8 | Sufi/Qawwali | 1 | 81.00 | 88.0 |
| 9 | Tollywood Filmi (Telugu) | 1 | 84.00 | 116.0 |
/* Region-level share of rows by owner, and filter to owners with >=2 appearances */
proc sql;
create table owner_region_counts as
select
Region
, Owner
, count(*) as Titles
from music_in_india
group by Region, Owner
having calculated Titles >= 1;
quit;
proc print data=owner_region_counts;
run;
OUTPUT:
| Obs | Region | Owner | Titles |
|---|---|---|---|
| 1 | East | Times Music | 1 |
| 2 | North | Saregama | 3 |
| 3 | Northeast | Times Music | 1 |
| 4 | Pan-India | Divine-Independent | 1 |
| 5 | Pan-India | Sony Music India | 1 |
| 6 | Pan-India | T-Series | 1 |
| 7 | Pan-India | Zee Music | 1 |
| 8 | South | Aditya Music | 1 |
| 9 | South | Saregama | 1 |
| 10 | South | Sony Music India | 1 |
5.Genre × Region Frequency Table
title "Table : Cross-Tabulation of Music Genre by Region";
proc freq data=music_fmt;
tables Genre * Region / norow nocol nocum;
run;
OUTPUT:
The FREQ Procedure
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
6.Genre-Wise Popularity & Tempo Summary
title "Table : Summary Statistics by Genre";
proc means data=music_fmt n mean std min max maxdec=2;
class Genre;
var TempoBPM PopularityIndex;
output out=genre_stats
n= Count_Tempo Count_Pop
mean= Mean_Tempo Mean_Pop
std= SD_Tempo SD_Pop
min= Min_Tempo Min_Pop
max= Max_Tempo Max_Pop;
run;
OUTPUT:
The MEANS Procedure
| Genre | N Obs | Variable | N | Mean | Std Dev | Minimum | Maximum |
|---|---|---|---|---|---|---|---|
| Bollywood | 1 | TempoBPM PopularityIndex | 1 1 | 122.00 92.00 | . . | 122.00 92.00 | 122.00 92.00 |
| Carnatic | 1 | TempoBPM PopularityIndex | 1 1 | 80.00 74.00 | . . | 80.00 74.00 | 80.00 74.00 |
| EDM/Bollywood Remix | 1 | TempoBPM PopularityIndex | 1 1 | 128.00 83.00 | . . | 128.00 83.00 | 128.00 83.00 |
| Folk-Baoul | 1 | TempoBPM PopularityIndex | 1 1 | 96.00 68.00 | . . | 96.00 68.00 | 96.00 68.00 |
| Folk-Bihu | 1 | TempoBPM PopularityIndex | 1 1 | 104.00 69.00 | . . | 104.00 69.00 | 104.00 69.00 |
| Ghazal | 1 | TempoBPM PopularityIndex | 1 1 | 68.00 77.00 | . . | 68.00 77.00 | 68.00 77.00 |
| Hindustani Classical | 1 | TempoBPM PopularityIndex | 1 1 | 72.00 78.00 | . . | 72.00 78.00 | 72.00 78.00 |
| Hip-Hop/Desi Rap | 1 | TempoBPM PopularityIndex | 1 1 | 98.00 89.00 | . . | 98.00 89.00 | 98.00 89.00 |
| Indie Pop | 1 | TempoBPM PopularityIndex | 1 1 | 110.00 85.00 | . . | 110.00 85.00 | 110.00 85.00 |
| Kollywood Filmi (Tamil) | 1 | TempoBPM PopularityIndex | 1 1 | 114.00 82.00 | . . | 114.00 82.00 | 114.00 82.00 |
| Sufi/Qawwali | 1 | TempoBPM PopularityIndex | 1 1 | 88.00 81.00 | . . | 88.00 81.00 | 88.00 81.00 |
| Tollywood Filmi (Telugu) | 1 | TempoBPM PopularityIndex | 1 1 | 116.00 84.00 | . . | 116.00 84.00 | 116.00 84.00 |
proc print data=genre_stats noobs label;
label Count_Tempo = "N (Tempo)"
Mean_Tempo = "Mean Tempo"
SD_Tempo = "SD Tempo"
Min_Tempo = "Min Tempo"
Max_Tempo = "Max Tempo"
Mean_Pop = "Mean Popularity"
SD_Pop = "SD Popularity";
run;
OUTPUT:
| Genre | _TYPE_ | _FREQ_ | N (Tempo) | Count_Pop | Mean Tempo | Mean Popularity | SD Tempo | SD Popularity | Min Tempo | Min_Pop | Max Tempo | Max_Pop |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 12 | 12 | 12 | 99.667 | 80.1667 | 19.5557 | 7.34641 | 68 | 68 | 128 | 92 | |
| Bollywood | 1 | 1 | 1 | 1 | 122.000 | 92.0000 | . | . | 122 | 92 | 122 | 92 |
| Carnatic | 1 | 1 | 1 | 1 | 80.000 | 74.0000 | . | . | 80 | 74 | 80 | 74 |
| EDM/Bollywood Remix | 1 | 1 | 1 | 1 | 128.000 | 83.0000 | . | . | 128 | 83 | 128 | 83 |
| Folk-Baoul | 1 | 1 | 1 | 1 | 96.000 | 68.0000 | . | . | 96 | 68 | 96 | 68 |
| Folk-Bihu | 1 | 1 | 1 | 1 | 104.000 | 69.0000 | . | . | 104 | 69 | 104 | 69 |
| Ghazal | 1 | 1 | 1 | 1 | 68.000 | 77.0000 | . | . | 68 | 77 | 68 | 77 |
| Hindustani Classical | 1 | 1 | 1 | 1 | 72.000 | 78.0000 | . | . | 72 | 78 | 72 | 78 |
| Hip-Hop/Desi Rap | 1 | 1 | 1 | 1 | 98.000 | 89.0000 | . | . | 98 | 89 | 98 | 89 |
| Indie Pop | 1 | 1 | 1 | 1 | 110.000 | 85.0000 | . | . | 110 | 85 | 110 | 85 |
| Kollywood Filmi (Tamil) | 1 | 1 | 1 | 1 | 114.000 | 82.0000 | . | . | 114 | 82 | 114 | 82 |
| Sufi/Qawwali | 1 | 1 | 1 | 1 | 88.000 | 81.0000 | . | . | 88 | 81 | 88 | 81 |
| Tollywood Filmi (Telugu) | 1 | 1 | 1 | 1 | 116.000 | 84.0000 | . | . | 116 | 84 | 116 | 84 |
No comments:
Post a Comment