Friday, 9 January 2026

365.WORLD FAMOUS BRIDGES DATA ANALYSIS USING PROC SQL | PROC MEANS | PROC UNIVARIATE | PROC SGPLOT | MACROS | DATE FUNCTIONS | MERGE | APPEND | TRANSPOSE

WORLD FAMOUS BRIDGES DATA ANALYSIS USING PROC SQL | PROC MEANS | PROC UNIVARIATE | PROC SGPLOT | MACROS | DATE FUNCTIONS | MERGE | APPEND | TRANSPOSE

 options nocenter;

1.Creating the Bridges Master Dataset

data bridges_raw;

    length Bridge_Name $25 Country $15;

    format Year_Built date9.;

    infile datalines dlm='|' dsd;

    input Bridge_Name $ Country $ Length Height Year_Built : date9. Traffic_Level;

datalines;

Brooklyn Bridge|USA|1825|84|24MAY1883|130000

Golden Gate|USA|2737|227|27MAY1937|95000

Sydney Harbour|Australia|1149|134|19MAR1932|160000

Tower Bridge|UK|244|65|30JUN1894|40000

Millau Viaduct|France|2460|343|16DEC2004|27000

Akashi Kaikyo|Japan|3911|298|05APR1998|23000

Vasco Da Gama|Portugal|12345|155|29MAR1998|200000

Danyang Kunshan|China|164800|100|30JUN2011|300000

Howrah Bridge|India|705|82|03FEB1943|100000

Helix Bridge|Singapore|280|30|24APR2010|5000

George Washington|USA|1450|184|24OCT1931|290000

Third Mainland|Nigeria|11700|30|23AUG1990|140000

Rialto Bridge|Italy|48|7|01JAN1591|60000

Hangzhou Bay|China|35600|60|01MAY2008|180000

;

run;

proc print data=bridges_raw;

run;

OUTPUT:

ObsBridge_NameCountryYear_BuiltLengthHeightTraffic_Level
1Brooklyn BridgeUSA24MAY1883182584130000
2Golden GateUSA27MAY1937273722795000
3Sydney HarbourAustralia19MAR19321149134160000
4Tower BridgeUK30JUN18942446540000
5Millau ViaductFrance16DEC2004246034327000
6Akashi KaikyoJapan05APR1998391129823000
7Vasco Da GamaPortugal29MAR199812345155200000
8Danyang KunshanChina30JUN2011164800100300000
9Howrah BridgeIndia03FEB194370582100000
10Helix BridgeSingapore24APR2010280305000
11George WashingtonUSA24OCT19311450184290000
12Third MainlandNigeria23AUG19901170030140000
13Rialto BridgeItaly01JAN159148760000
14Hangzhou BayChina01MAY20083560060180000


2.Applying Date Functions (MDY, INTNX, INTCK)

data bridges_dates;

    set bridges_raw;

    Built_Year = year(Year_Built);

    Inspection_Date = intnx('year', Year_Built, 10, 'same');

    Bridge_Age = intck('year', Year_Built, today());

    format Inspection_Date date9.;

run;

proc print data=bridges_dates;

run;

OUTPUT:

ObsBridge_NameCountryYear_BuiltLengthHeightTraffic_LevelBuilt_YearInspection_DateBridge_Age
1Brooklyn BridgeUSA24MAY1883182584130000188324MAY1893143
2Golden GateUSA27MAY1937273722795000193727MAY194789
3Sydney HarbourAustralia19MAR19321149134160000193219MAR194294
4Tower BridgeUK30JUN18942446540000189430JUN1904132
5Millau ViaductFrance16DEC2004246034327000200416DEC201422
6Akashi KaikyoJapan05APR1998391129823000199805APR200828
7Vasco Da GamaPortugal29MAR199812345155200000199829MAR200828
8Danyang KunshanChina30JUN2011164800100300000201130JUN202115
9Howrah BridgeIndia03FEB194370582100000194303FEB195383
10Helix BridgeSingapore24APR2010280305000201024APR202016
11George WashingtonUSA24OCT19311450184290000193124OCT194195
12Third MainlandNigeria23AUG19901170030140000199023AUG200036
13Rialto BridgeItaly01JAN159148760000159101JAN1601435
14Hangzhou BayChina01MAY20083560060180000200801MAY201818


3.Structural Classification Using MACRO

%macro structure_cat;

data bridges_struct;

    length Structure_Type $15.;

    set bridges_dates;

    if Length > 10000 then Structure_Type="Mega Bridge";

    else if Length > 3000 then Structure_Type="Long Span";

    else Structure_Type="Standard Bridge";

run;

proc print data=bridges_struct;

run;

%mend;


%structure_cat;

OUTPUT:

ObsStructure_TypeBridge_NameCountryYear_BuiltLengthHeightTraffic_LevelBuilt_YearInspection_DateBridge_Age
1Standard BridgeBrooklyn BridgeUSA24MAY1883182584130000188324MAY1893143
2Standard BridgeGolden GateUSA27MAY1937273722795000193727MAY194789
3Standard BridgeSydney HarbourAustralia19MAR19321149134160000193219MAR194294
4Standard BridgeTower BridgeUK30JUN18942446540000189430JUN1904132
5Standard BridgeMillau ViaductFrance16DEC2004246034327000200416DEC201422
6Long SpanAkashi KaikyoJapan05APR1998391129823000199805APR200828
7Mega BridgeVasco Da GamaPortugal29MAR199812345155200000199829MAR200828
8Mega BridgeDanyang KunshanChina30JUN2011164800100300000201130JUN202115
9Standard BridgeHowrah BridgeIndia03FEB194370582100000194303FEB195383
10Standard BridgeHelix BridgeSingapore24APR2010280305000201024APR202016
11Standard BridgeGeorge WashingtonUSA24OCT19311450184290000193124OCT194195
12Mega BridgeThird MainlandNigeria23AUG19901170030140000199023AUG200036
13Standard BridgeRialto BridgeItaly01JAN159148760000159101JAN1601435
14Mega BridgeHangzhou BayChina01MAY20083560060180000200801MAY201818


4.Creating Traffic Category Using Macro

%macro traffic_cat;

data bridges_traffic;

    set bridges_struct;

    if Traffic_Level > 200000 then Traffic_Class="Very Heavy";

    else if Traffic_Level > 100000 then Traffic_Class="Heavy";

    else Traffic_Class="Moderate";

run;

proc print data=bridges_traffic;

run;

%mend;


%traffic_cat;

OUTPUT:

ObsStructure_TypeBridge_NameCountryYear_BuiltLengthHeightTraffic_LevelBuilt_YearInspection_DateBridge_AgeTraffic_Class
1Standard BridgeBrooklyn BridgeUSA24MAY1883182584130000188324MAY1893143Heavy
2Standard BridgeGolden GateUSA27MAY1937273722795000193727MAY194789Moderate
3Standard BridgeSydney HarbourAustralia19MAR19321149134160000193219MAR194294Heavy
4Standard BridgeTower BridgeUK30JUN18942446540000189430JUN1904132Moderate
5Standard BridgeMillau ViaductFrance16DEC2004246034327000200416DEC201422Moderate
6Long SpanAkashi KaikyoJapan05APR1998391129823000199805APR200828Moderate
7Mega BridgeVasco Da GamaPortugal29MAR199812345155200000199829MAR200828Heavy
8Mega BridgeDanyang KunshanChina30JUN2011164800100300000201130JUN202115Very Heavy
9Standard BridgeHowrah BridgeIndia03FEB194370582100000194303FEB195383Moderate
10Standard BridgeHelix BridgeSingapore24APR2010280305000201024APR202016Moderate
11Standard BridgeGeorge WashingtonUSA24OCT19311450184290000193124OCT194195Very Heavy
12Mega BridgeThird MainlandNigeria23AUG19901170030140000199023AUG200036Heavy
13Standard BridgeRialto BridgeItaly01JAN159148760000159101JAN1601435Moderate
14Mega BridgeHangzhou BayChina01MAY20083560060180000200801MAY201818Heavy


5.PROC SQL – Business Queries

proc sql;

    create table high_traffic as

    select Bridge_Name, Country, Traffic_Level

    from bridges_traffic

    where Traffic_Level > 150000;

quit;

proc print data=high_traffic;

run;

OUTPUT:

ObsBridge_NameCountryTraffic_Level
1Sydney HarbourAustralia160000
2Vasco Da GamaPortugal200000
3Danyang KunshanChina300000
4George WashingtonUSA290000
5Hangzhou BayChina180000


6.PROC MEANS – Statistical Summary

proc means data=bridges_traffic mean min max std;

    var Length Height Traffic_Level Bridge_Age;

run;

OUTPUT:

The MEANS Procedure

VariableMeanMinimumMaximumStd Dev
Length
Height
Traffic_Level
Bridge_Age
17089.57
128.5000000
125000.00
88.1428571
48.0000000
7.0000000
5000.00
15.0000000
164800.00
343.0000000
300000.00
435.0000000
43556.48
102.3198229
94200.28
109.2469730

7.PROC UNIVARIATE – Distribution Analysis

proc univariate data=bridges_traffic;

    var Length Traffic_Level;

    histogram;

run;

OUTPUT:

The UNIVARIATE Procedure

Variable: Length

Moments
N14Sum Weights14
Mean17089.5714Sum Observations239254
Std Deviation43556.4797Variance1897166922
Skewness3.46467169Kurtosis12.3698523
Uncorrected SS2.87519E10Corrected SS2.46632E10
Coeff Variation254.871691Std Error Mean11640.9589
Basic Statistical Measures
LocationVariability
Mean17089.57Std Deviation43556
Median2142.50Variance1897166922
Mode.Range164752
  Interquartile Range10995
Tests for Location: Mu0=0
TestStatisticp Value
Student's tt1.468055Pr > |t|0.1659
SignM7Pr >= |M|0.0001
Signed RankS52.5Pr >= |S|0.0001
Quantiles (Definition 5)
LevelQuantile
100% Max164800.0
99%164800.0
95%164800.0
90%35600.0
75% Q311700.0
50% Median2142.5
25% Q1705.0
10%244.0
5%48.0
1%48.0
0% Min48.0
Extreme Observations
LowestHighest
ValueObsValueObs
481339116
24441170012
28010123457
70593560014
114931648008

The UNIVARIATE Procedure

Histogram for Length

The UNIVARIATE Procedure

Variable: Traffic_Level

Moments
N14Sum Weights14
Mean125000Sum Observations1750000
Std Deviation94200.2776Variance8873692308
Skewness0.62530853Kurtosis-0.4209584
Uncorrected SS3.34108E11Corrected SS1.15358E11
Coeff Variation75.3602221Std Error Mean25176.0832
Basic Statistical Measures
LocationVariability
Mean125000.0Std Deviation94200
Median115000.0Variance8873692308
Mode.Range295000
  Interquartile Range140000
Tests for Location: Mu0=0
TestStatisticp Value
Student's tt4.96503Pr > |t|0.0003
SignM7Pr >= |M|0.0001
Signed RankS52.5Pr >= |S|0.0001
Quantiles (Definition 5)
LevelQuantile
100% Max300000
99%300000
95%300000
90%290000
75% Q3180000
50% Median115000
25% Q140000
10%23000
5%5000
1%5000
0% Min5000
Extreme Observations
LowestHighest
ValueObsValueObs
5000101600003
23000618000014
2700052000007
40000429000011
60000133000008

The UNIVARIATE Procedure

Histogram for Traffic_Level

8.PROC SGPLOT – Visual Analytics

proc sgplot data=bridges_traffic;

    vbar Country / response=Traffic_Level stat=mean;

run;

OUTPUT:

The SGPlot Procedure


proc sgplot data=bridges_traffic;

    scatter x=Length y=Traffic_Level;

run;

OUTPUT:

The SGPlot Procedure


9.Using PROC TRANSPOSE

proc transpose data=bridges_traffic out=bridges_transposed;

    var Length Height Traffic_Level;

    id Bridge_Name;

run;

proc print data=bridges_transposed;

run;

OUTPUT:

Obs_NAME_Brooklyn BridgeGolden GateSydney HarbourTower BridgeMillau ViaductAkashi KaikyoVasco Da GamaDanyang KunshanHowrah BridgeHelix BridgeGeorge WashingtonThird MainlandRialto BridgeHangzhou Bay
1Length18252737114924424603911123451648007052801450117004835600
2Height8422713465343298155100823018430760
3Traffic_Level13000095000160000400002700023000200000300000100000500029000014000060000180000


10.Using PROC APPEND

data new_bridge;

    format Year_Built date9.;

    Bridge_Name="ChenabRail";

    Country="India";

    Length=1315;

    Height=359;

    Year_Built='13AUG2022'd;

    Traffic_Level=40000;

run;

proc print data=new_bridge;

run;

OUTPUT:

ObsYear_BuiltBridge_NameCountryLengthHeightTraffic_Level
113AUG2022ChenabRailIndia131535940000


proc append base=bridges_raw 

            data=new_bridge force;

run;

proc print data=bridges_raw;

run;

OUTPUT:

ObsBridge_NameCountryYear_BuiltLengthHeightTraffic_Level
1Brooklyn BridgeUSA24MAY1883182584130000
2Golden GateUSA27MAY1937273722795000
3Sydney HarbourAustralia19MAR19321149134160000
4Tower BridgeUK30JUN18942446540000
5Millau ViaductFrance16DEC2004246034327000
6Akashi KaikyoJapan05APR1998391129823000
7Vasco Da GamaPortugal29MAR199812345155200000
8Danyang KunshanChina30JUN2011164800100300000
9Howrah BridgeIndia03FEB194370582100000
10Helix BridgeSingapore24APR2010280305000
11George WashingtonUSA24OCT19311450184290000
12Third MainlandNigeria23AUG19901170030140000
13Rialto BridgeItaly01JAN159148760000
14Hangzhou BayChina01MAY20083560060180000
15ChenabRailIndia13AUG2022131535940000


11.Using SET Statement

data bridges_combined;

    set bridges_traffic 

        high_traffic;

run;

proc print data=bridges_combined;

run;

OUTPUT:

ObsStructure_TypeBridge_NameCountryYear_BuiltLengthHeightTraffic_LevelBuilt_YearInspection_DateBridge_AgeTraffic_Class
1Standard BridgeBrooklyn BridgeUSA24MAY1883182584130000188324MAY1893143Heavy
2Standard BridgeGolden GateUSA27MAY1937273722795000193727MAY194789Moderate
3Standard BridgeSydney HarbourAustralia19MAR19321149134160000193219MAR194294Heavy
4Standard BridgeTower BridgeUK30JUN18942446540000189430JUN1904132Moderate
5Standard BridgeMillau ViaductFrance16DEC2004246034327000200416DEC201422Moderate
6Long SpanAkashi KaikyoJapan05APR1998391129823000199805APR200828Moderate
7Mega BridgeVasco Da GamaPortugal29MAR199812345155200000199829MAR200828Heavy
8Mega BridgeDanyang KunshanChina30JUN2011164800100300000201130JUN202115Very Heavy
9Standard BridgeHowrah BridgeIndia03FEB194370582100000194303FEB195383Moderate
10Standard BridgeHelix BridgeSingapore24APR2010280305000201024APR202016Moderate
11Standard BridgeGeorge WashingtonUSA24OCT19311450184290000193124OCT194195Very Heavy
12Mega BridgeThird MainlandNigeria23AUG19901170030140000199023AUG200036Heavy
13Standard BridgeRialto BridgeItaly01JAN159148760000159101JAN1601435Moderate
14Mega BridgeHangzhou BayChina01MAY20083560060180000200801MAY201818Heavy
15 Sydney HarbourAustralia...160000... 
16 Vasco Da GamaPortugal...200000... 
17 Danyang KunshanChina...300000... 
18 George WashingtonUSA...290000... 
19 Hangzhou BayChina...180000... 


12.Using MERGE

proc sort data=bridges_traffic; by Bridge_Name; run;

proc print data=bridges_traffic;

run;

OUTPUT:

ObsStructure_TypeBridge_NameCountryYear_BuiltLengthHeightTraffic_LevelBuilt_YearInspection_DateBridge_AgeTraffic_Class
1Long SpanAkashi KaikyoJapan05APR1998391129823000199805APR200828Moderate
2Standard BridgeBrooklyn BridgeUSA24MAY1883182584130000188324MAY1893143Heavy
3Mega BridgeDanyang KunshanChina30JUN2011164800100300000201130JUN202115Very Heavy
4Standard BridgeGeorge WashingtonUSA24OCT19311450184290000193124OCT194195Very Heavy
5Standard BridgeGolden GateUSA27MAY1937273722795000193727MAY194789Moderate
6Mega BridgeHangzhou BayChina01MAY20083560060180000200801MAY201818Heavy
7Standard BridgeHelix BridgeSingapore24APR2010280305000201024APR202016Moderate
8Standard BridgeHowrah BridgeIndia03FEB194370582100000194303FEB195383Moderate
9Standard BridgeMillau ViaductFrance16DEC2004246034327000200416DEC201422Moderate
10Standard BridgeRialto BridgeItaly01JAN159148760000159101JAN1601435Moderate
11Standard BridgeSydney HarbourAustralia19MAR19321149134160000193219MAR194294Heavy
12Mega BridgeThird MainlandNigeria23AUG19901170030140000199023AUG200036Heavy
13Standard BridgeTower BridgeUK30JUN18942446540000189430JUN1904132Moderate
14Mega BridgeVasco Da GamaPortugal29MAR199812345155200000199829MAR200828Heavy


proc sort data=high_traffic; by Bridge_Name; run;

proc print data=high_traffic;

run;

OUTPUT:

ObsBridge_NameCountryTraffic_Level
1Danyang KunshanChina300000
2George WashingtonUSA290000
3Hangzhou BayChina180000
4Sydney HarbourAustralia160000
5Vasco Da GamaPortugal200000


data bridges_merge;

    merge bridges_traffic(in=a) high_traffic(in=b);

    by Bridge_Name;

    if a;

run;

proc print data=bridges_merge;

run;

OUTPUT:

ObsStructure_TypeBridge_NameCountryYear_BuiltLengthHeightTraffic_LevelBuilt_YearInspection_DateBridge_AgeTraffic_Class
1Long SpanAkashi KaikyoJapan05APR1998391129823000199805APR200828Moderate
2Standard BridgeBrooklyn BridgeUSA24MAY1883182584130000188324MAY1893143Heavy
3Mega BridgeDanyang KunshanChina30JUN2011164800100300000201130JUN202115Very Heavy
4Standard BridgeGeorge WashingtonUSA24OCT19311450184290000193124OCT194195Very Heavy
5Standard BridgeGolden GateUSA27MAY1937273722795000193727MAY194789Moderate
6Mega BridgeHangzhou BayChina01MAY20083560060180000200801MAY201818Heavy
7Standard BridgeHelix BridgeSingapore24APR2010280305000201024APR202016Moderate
8Standard BridgeHowrah BridgeIndia03FEB194370582100000194303FEB195383Moderate
9Standard BridgeMillau ViaductFrance16DEC2004246034327000200416DEC201422Moderate
10Standard BridgeRialto BridgeItaly01JAN159148760000159101JAN1601435Moderate
11Standard BridgeSydney HarbourAustralia19MAR19321149134160000193219MAR194294Heavy
12Mega BridgeThird MainlandNigeria23AUG19901170030140000199023AUG200036Heavy
13Standard BridgeTower BridgeUK30JUN18942446540000189430JUN1904132Moderate
14Mega BridgeVasco Da GamaPortugal29MAR199812345155200000199829MAR200828Heavy


13.Advanced PROC SQL – Engineering Insights

proc sql;

    select Country,

           avg(Length) as Avg_Length,

           avg(Traffic_Level) as Avg_Traffic

    from bridges_merge

    group by Country;

quit;

OUTPUT:
CountryAvg_LengthAvg_Traffic
Australia1149160000
China100200240000
France246027000
India705100000
Italy4860000
Japan391123000
Nigeria11700140000
Portugal12345200000
Singapore2805000
UK24440000
USA2004171666.7



To Visit My Previous Software Company Analysis Dataset:Click Here
To Visit My Previous Vote Program Dataset:Click Here
To Visit My Previous Audi Cars Performance Analysis Dataset:Click Here
To Visit My Previous Global Clothing Trends Dataset:Click Here  



Follow Us On : 


 



--->FOLLOW OUR BLOG FOR MORE INFORMATION.
--->PLEASE DO COMMENTS AND SHARE OUR BLOG.

No comments:

Post a Comment