402.Can SAS Identify the Most Efficient Waste Collection Routes in a City?

Can SAS Identify the Most Efficient Waste Collection Routes in a City?

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

HERE IN THIS PROJECT WE USED THESE SAS STATEMENTS —
DATA STEP | PROC SQL |  PROC PRINT | PROC SGPLOT | MACROS | PROC CORR | PROC MEANS | PROC FREQ | PROC UNIVARIATE | SET | PROC TRANSPOSE | PROC DATASETS DELETE | DATA FUNCTIONS

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

INTRODUCTION

Urban waste collection is one of the most critical municipal services. Cities spend millions of rupees every year on fuel, manpower, vehicles, and maintenance for waste collection.

However, inefficient routing, fuel misuse, time delays, and fraud (fake fuel claims, inflated tonnage reporting) can lead to huge losses.

This project demonstrates how a SAS Programmer / Data Analyst can:

·       Build a clean analytical dataset

·       Measure route efficiency

·       Detect operational red flags (fraud-like patterns)

·       Analyze fuel usage, time, distance, and waste

·       Generate statistical and visual insights

TABLE OF CONTENTS

1.     Business Context

2.     Dataset Design

3.     Raw Data Creation

4.     Date Handling (MDY, INTCK, INTNX)

5.     Data Cleaning & Standardization

6.     Derived Metrics & Efficiency Score

7.     Macro: Utilization Classification

8.     Macro: Fraud Detection Logic

9.     PROC SQL Analytics

10.  PROC FREQ

11.  PROC MEANS

12.  PROC UNIVARIATE

13.  PROC CORR

14.  PROC SGPLOT

15.  TRANSPOSE, SET

16.  Character & Numeric Functions

17.  PROC DATASETS DELETE

18.  5 Key Points About This Project

19.  Who Can Use and Read This Project?

20.  Conclusion

1. BUSINESS CONTEXT

Municipal corporations want answers to questions like:

·       Which routes are efficient or inefficient?

·       Are drivers over-reporting fuel usage?

·       Is waste collected proportional to distance?

·       Which cities perform better?

·       How does time affect fuel and waste volume?

This SAS project answers all of these.

2. DATASET DESIGN

Variables Used

Variable

Description

Route_ID

Unique route identifier

City

City name

Route_Date

Collection date

Distance_km

Distance covered

Waste_Collected_Tons

Waste collected

Fuel_Used_Liters

Fuel used

Time_Taken_Hours

Time taken

Vehicle_Type

Truck type

Driver_Name

Driver

Efficiency_Score

Calculated %

Utilization_Class

High/Medium/Low

Fraud_Flag

Y / N

 

3. RAW DATA CREATION (DATA STEP)

data waste_routes_raw;

    input Route_ID $ City:$12. Route_Date : date9. Distance_km Waste_Collected_Tons

           Fuel_Used_Liters Time_Taken_Hours Vehicle_Type:$14. Driver_Name $;

    format Route_Date date9.;

datalines;

R001 Hyderabad 01JAN2026 25 12.5 18 4 Compactor Ravi

R002 Hyderabad 02JAN2026 30 14.0 22 5 Tipper Kumar

R003 Chennai   01JAN2026 20 10.2 15 3 Compactor Arjun

R004 Chennai   03JAN2026 28 16.8 26 6 Tipper Suresh

R005 Mumbai    01JAN2026 35 20.0 30 7 Compactor Ramesh

R006 Mumbai    02JAN2026 40 21.5 36 8 Tipper Mahesh

R007 Pune      01JAN2026 18 8.0 14 3 MiniTruck Ajay

R008 Pune      02JAN2026 22 9.5 16 4 MiniTruck Vijay

R009 Delhi     01JAN2026 45 24.0 40 9 Compactor Deepak

R010 Delhi     03JAN2026 50 26.5 45 10 Tipper Aman

R011 Jaipur    01JAN2026 20 11.0 17 4 MiniTruck Rohit

R012 Jaipur    02JAN2026 24 12.2 18 5 MiniTruck Mohan

R013 Kochi     01JAN2026 15 7.8 10 3 Compactor Sajan

R014 Kochi     02JAN2026 17 8.5 12 3 Compactor Anil

R015 Indore    03JAN2026 26 13.5 21 5 Tipper Sanjay

;

run;

proc print data=waste_routes_raw;

run;

OUTPUT:

ObsRoute_IDCityRoute_DateDistance_kmWaste_Collected_TonsFuel_Used_LitersTime_Taken_HoursVehicle_TypeDriver_Name
1R001Hyderabad01JAN20262512.5184CompactorRavi
2R002Hyderabad02JAN20263014.0225TipperKumar
3R003Chennai01JAN20262010.2153CompactorArjun
4R004Chennai03JAN20262816.8266TipperSuresh
5R005Mumbai01JAN20263520.0307CompactorRamesh
6R006Mumbai02JAN20264021.5368TipperMahesh
7R007Pune01JAN2026188.0143MiniTruckAjay
8R008Pune02JAN2026229.5164MiniTruckVijay
9R009Delhi01JAN20264524.0409CompactorDeepak
10R010Delhi03JAN20265026.54510TipperAman
11R011Jaipur01JAN20262011.0174MiniTruckRohit
12R012Jaipur02JAN20262412.2185MiniTruckMohan
13R013Kochi01JAN2026157.8103CompactorSajan
14R014Kochi02JAN2026178.5123CompactorAnil
15R015Indore03JAN20262613.5215TipperSanjay

·  Same as real municipal data

·  Includes dates, numbers, and character variables

4. DATE FUNCTIONS (MDY, INTCK, INTNX)

data waste_routes_dates;

    set waste_routes_raw;

    Month_Start = intnx('month', Route_Date, 0, 'b');

    Days_From_Start = intck('day', '01JAN2026'd, Route_Date);

    format Month_Start date9.;

drop Distance_km Waste_Collected_Tons Fuel_Used_Liters Time_Taken_Hours Vehicle_Type;

run;

proc print data=waste_routes_dates;

run;

OUTPUT:

ObsRoute_IDCityRoute_DateDriver_NameMonth_StartDays_From_Start
1R001Hyderabad01JAN2026Ravi01JAN20260
2R002Hyderabad02JAN2026Kumar01JAN20261
3R003Chennai01JAN2026Arjun01JAN20260
4R004Chennai03JAN2026Suresh01JAN20262
5R005Mumbai01JAN2026Ramesh01JAN20260
6R006Mumbai02JAN2026Mahesh01JAN20261
7R007Pune01JAN2026Ajay01JAN20260
8R008Pune02JAN2026Vijay01JAN20261
9R009Delhi01JAN2026Deepak01JAN20260
10R010Delhi03JAN2026Aman01JAN20262
11R011Jaipur01JAN2026Rohit01JAN20260
12R012Jaipur02JAN2026Mohan01JAN20261
13R013Kochi01JAN2026Sajan01JAN20260
14R014Kochi02JAN2026Anil01JAN20261
15R015Indore03JAN2026Sanjay01JAN20262

Why this is used

·  INTNX: aligns reporting to month start

·  INTCK: measures time gaps

·  Used heavily in operational reporting

5. DATA CLEANING & CHARACTER FUNCTIONS

data waste_routes_clean;

    set waste_routes_raw;

    City = propcase(strip(City));

    Driver_Name = upcase(trim(Driver_Name));

    Vehicle_Type = lowcase(Vehicle_Type);

    Route_Key = catx('_', City, Route_ID);

keep Route_ID City Vehicle_Type Driver_Name;

run;

proc print data=waste_routes_clean;

run;

OUTPUT:

ObsRoute_IDCityVehicle_TypeDriver_Name
1R001HyderabadcompactorRAVI
2R002HyderabadtipperKUMAR
3R003ChennaicompactorARJUN
4R004ChennaitipperSURESH
5R005MumbaicompactorRAMESH
6R006MumbaitipperMAHESH
7R007PuneminitruckAJAY
8R008PuneminitruckVIJAY
9R009DelhicompactorDEEPAK
10R010DelhitipperAMAN
11R011JaipurminitruckROHIT
12R012JaipurminitruckMOHAN
13R013KochicompactorSAJAN
14R014KochicompactorANIL
15R015IndoretipperSANJAY

Functions explained

·  STRIP / TRIM → remove spaces

·  PROPCASE → city formatting

·  UPCASE / LOWCASE

·  CATX → create composite keys

6. EFFICIENCY SCORE CALCULATION

data waste_routes_metrics;

    set waste_routes_raw;

    Efficiency_Score = (Waste_Collected_Tons / Fuel_Used_Liters) * 100;

    format Efficiency_Score 6.2;

run;

proc print data=waste_routes_metrics;

run;

OUTPUT:

ObsRoute_IDCityRoute_DateDistance_kmWaste_Collected_TonsFuel_Used_LitersTime_Taken_HoursVehicle_TypeDriver_NameEfficiency_Score
1R001Hyderabad01JAN20262512.5184CompactorRavi69.44
2R002Hyderabad02JAN20263014.0225TipperKumar63.64
3R003Chennai01JAN20262010.2153CompactorArjun68.00
4R004Chennai03JAN20262816.8266TipperSuresh64.62
5R005Mumbai01JAN20263520.0307CompactorRamesh66.67
6R006Mumbai02JAN20264021.5368TipperMahesh59.72
7R007Pune01JAN2026188.0143MiniTruckAjay57.14
8R008Pune02JAN2026229.5164MiniTruckVijay59.38
9R009Delhi01JAN20264524.0409CompactorDeepak60.00
10R010Delhi03JAN20265026.54510TipperAman58.89
11R011Jaipur01JAN20262011.0174MiniTruckRohit64.71
12R012Jaipur02JAN20262412.2185MiniTruckMohan67.78
13R013Kochi01JAN2026157.8103CompactorSajan78.00
14R014Kochi02JAN2026178.5123CompactorAnil70.83
15R015Indore03JAN20262613.5215TipperSanjay64.29

·  Shows waste per fuel

·  Higher = better operational efficiency

7. MACRO: UTILIZATION CLASSIFICATION

%macro utilization;

data waste_routes_util;

    set waste_routes_metrics;

length Utilization_Class $8.;

    if Efficiency_Score >= 70 then Utilization_Class = 'HIGH';

    else if Efficiency_Score >= 60 then Utilization_Class = 'MEDIUM';

    else Utilization_Class = 'LOW';

run;

proc print data=waste_routes_util;

run;

%mend;


%utilization;

OUTPUT:

ObsRoute_IDCityRoute_DateDistance_kmWaste_Collected_TonsFuel_Used_LitersTime_Taken_HoursVehicle_TypeDriver_NameEfficiency_ScoreUtilization_Class
1R001Hyderabad01JAN20262512.5184CompactorRavi69.44MEDIUM
2R002Hyderabad02JAN20263014.0225TipperKumar63.64MEDIUM
3R003Chennai01JAN20262010.2153CompactorArjun68.00MEDIUM
4R004Chennai03JAN20262816.8266TipperSuresh64.62MEDIUM
5R005Mumbai01JAN20263520.0307CompactorRamesh66.67MEDIUM
6R006Mumbai02JAN20264021.5368TipperMahesh59.72LOW
7R007Pune01JAN2026188.0143MiniTruckAjay57.14LOW
8R008Pune02JAN2026229.5164MiniTruckVijay59.38LOW
9R009Delhi01JAN20264524.0409CompactorDeepak60.00MEDIUM
10R010Delhi03JAN20265026.54510TipperAman58.89LOW
11R011Jaipur01JAN20262011.0174MiniTruckRohit64.71MEDIUM
12R012Jaipur02JAN20262412.2185MiniTruckMohan67.78MEDIUM
13R013Kochi01JAN2026157.8103CompactorSajan78.00HIGH
14R014Kochi02JAN2026178.5123CompactorAnil70.83HIGH
15R015Indore03JAN20262613.5215TipperSanjay64.29MEDIUM

Business Value

·  Helps management rank routes

·  Used in dashboards & KPIs

8. MACRO: FRAUD DETECTION LOGIC

%macro fraud_check;

data waste_routes_fraud;

    set waste_routes_util;

    if Fuel_Used_Liters > (Distance_km * 0.8) then Fraud_Flag = 'Y';

    else Fraud_Flag = 'N';

run;

proc print data=waste_routes_fraud;

run;

%mend;


%fraud_check;

OUTPUT:

ObsRoute_IDCityRoute_DateDistance_kmWaste_Collected_TonsFuel_Used_LitersTime_Taken_HoursVehicle_TypeDriver_NameEfficiency_ScoreUtilization_ClassFraud_Flag
1R001Hyderabad01JAN20262512.5184CompactorRavi69.44MEDIUMN
2R002Hyderabad02JAN20263014.0225TipperKumar63.64MEDIUMN
3R003Chennai01JAN20262010.2153CompactorArjun68.00MEDIUMN
4R004Chennai03JAN20262816.8266TipperSuresh64.62MEDIUMY
5R005Mumbai01JAN20263520.0307CompactorRamesh66.67MEDIUMY
6R006Mumbai02JAN20264021.5368TipperMahesh59.72LOWY
7R007Pune01JAN2026188.0143MiniTruckAjay57.14LOWN
8R008Pune02JAN2026229.5164MiniTruckVijay59.38LOWN
9R009Delhi01JAN20264524.0409CompactorDeepak60.00MEDIUMY
10R010Delhi03JAN20265026.54510TipperAman58.89LOWY
11R011Jaipur01JAN20262011.0174MiniTruckRohit64.71MEDIUMY
12R012Jaipur02JAN20262412.2185MiniTruckMohan67.78MEDIUMN
13R013Kochi01JAN2026157.8103CompactorSajan78.00HIGHN
14R014Kochi02JAN2026178.5123CompactorAnil70.83HIGHN
15R015Indore03JAN20262613.5215TipperSanjay64.29MEDIUMY

·  Fuel should be proportional to distance

·  Flags possible misuse or data issues

9. PROC SQL – ANALYTICS

proc sql;

    create table city_summary as

    select City,

           count(*) as Routes,

           avg(Efficiency_Score) as Avg_Efficiency,

           sum(Waste_Collected_Tons) as Total_Waste

    from waste_routes_fraud

    group by City;

quit;

proc print data=city_summary;

run;

OUTPUT:

ObsCityRoutesAvg_EfficiencyTotal_Waste
1Chennai266.307727.0
2Delhi259.444450.5
3Hyderabad266.540426.5
4Indore164.285713.5
5Jaipur266.241823.2
6Kochi274.416716.3
7Mumbai263.194441.5
8Pune258.258917.5

10. PROC FREQ

proc freq data=waste_routes_fraud;

    tables City*Fraud_Flag / nocol nopercent;

run;

OUTPUT:

The FREQ Procedure

Frequency
Row Pct
Table of City by Fraud_Flag
CityFraud_Flag
NYTotal
Chennai
1
50.00
1
50.00
2
 
Delhi
0
0.00
2
100.00
2
 
Hyderabad
2
100.00
0
0.00
2
 
Indore
0
0.00
1
100.00
1
 
Jaipur
1
50.00
1
50.00
2
 
Kochi
2
100.00
0
0.00
2
 
Mumbai
0
0.00
2
100.00
2
 
Pune
2
100.00
0
0.00
2
 
Total
8
7
15
11. PROC MEANS

proc means data=waste_routes_fraud mean min max;

    var Distance_km Fuel_Used_Liters Waste_Collected_Tons Efficiency_Score;

run;

OUTPUT:

The MEANS Procedure

VariableMeanMinimumMaximum
Distance_km
Fuel_Used_Liters
Waste_Collected_Tons
Efficiency_Score
27.6666667
22.6666667
14.4000000
64.8729690
15.0000000
10.0000000
7.8000000
57.1428571
50.0000000
45.0000000
26.5000000
78.0000000

12. PROC UNIVARIATE

proc univariate data=waste_routes_fraud;

    var Efficiency_Score;

    histogram Efficiency_Score;

run;

OUTPUT:

The UNIVARIATE Procedure

Variable: Efficiency_Score

Moments
N15Sum Weights15
Mean64.872969Sum Observations973.094535
Std Deviation5.53051739Variance30.5866226
Skewness0.74705715Kurtosis0.76556131
Uncorrected SS63555.7444Corrected SS428.212717
Coeff Variation8.52514919Std Error Mean1.42797345
Basic Statistical Measures
LocationVariability
Mean64.87297Std Deviation5.53052
Median64.61538Variance30.58662
Mode.Range20.85714
  Interquartile Range8.27778
Tests for Location: Mu0=0
TestStatisticp Value
Student's tt45.43009Pr > |t|<.0001
SignM7.5Pr >= |M|<.0001
Signed RankS60Pr >= |S|<.0001
Quantiles (Definition 5)
LevelQuantile
100% Max78.0000
99%78.0000
95%78.0000
90%70.8333
75% Q368.0000
50% Median64.6154
25% Q159.7222
10%58.8889
5%57.1429
1%57.1429
0% Min57.1429
Extreme Observations
LowestHighest
ValueObsValueObs
57.1429767.777812
58.88891068.00003
59.3750869.44441
59.7222670.833314
60.0000978.000013

The UNIVARIATE Procedure

Histogram for Efficiency_Score

13. PROC CORR

proc corr data=waste_routes_fraud;

    var Distance_km Fuel_Used_Liters Waste_Collected_Tons Time_Taken_Hours;

run;

OUTPUT:

The CORR Procedure

4 Variables:Distance_km Fuel_Used_Liters Waste_Collected_Tons Time_Taken_Hours
Simple Statistics
VariableNMeanStd DevSumMinimumMaximum
Distance_km1527.6666710.52661415.0000015.0000050.00000
Fuel_Used_Liters1522.6666710.60099340.0000010.0000045.00000
Waste_Collected_Tons1514.400006.02412216.000007.8000026.50000
Time_Taken_Hours155.266672.2824479.000003.0000010.00000
Pearson Correlation Coefficients, N = 15
Prob > |r| under H0: Rho=0
 Distance_kmFuel_Used_LitersWaste_Collected_TonsTime_Taken_Hours
Distance_km
1.00000
 
0.99042
<.0001
0.98469
<.0001
0.98206
<.0001
Fuel_Used_Liters
0.99042
<.0001
1.00000
 
0.99255
<.0001
0.98993
<.0001
Waste_Collected_Tons
0.98469
<.0001
0.99255
<.0001
1.00000
 
0.98808
<.0001
Time_Taken_Hours
0.98206
<.0001
0.98993
<.0001
0.98808
<.0001
1.00000
 

14. PROC SGPLOT

proc sgplot data=waste_routes_fraud;

    scatter x=Distance_km y=Fuel_Used_Liters;

    reg x=Distance_km y=Fuel_Used_Liters;

run;

OUTPUT:

The SGPlot Procedure


15. TRANSPOSE,SET

proc transpose data=city_summary out=city_trans;

    by City NotSorted;

run;

proc print data=city_trans;

run;

OUTPUT:

ObsCity_NAME_COL1
1ChennaiRoutes2.0000
2ChennaiAvg_Efficiency66.3077
3ChennaiTotal_Waste27.0000
4DelhiRoutes2.0000
5DelhiAvg_Efficiency59.4444
6DelhiTotal_Waste50.5000
7HyderabadRoutes2.0000
8HyderabadAvg_Efficiency66.5404
9HyderabadTotal_Waste26.5000
10IndoreRoutes1.0000
11IndoreAvg_Efficiency64.2857
12IndoreTotal_Waste13.5000
13JaipurRoutes2.0000
14JaipurAvg_Efficiency66.2418
15JaipurTotal_Waste23.2000
16KochiRoutes2.0000
17KochiAvg_Efficiency74.4167
18KochiTotal_Waste16.3000
19MumbaiRoutes2.0000
20MumbaiAvg_Efficiency63.1944
21MumbaiTotal_Waste41.5000
22PuneRoutes2.0000
23PuneAvg_Efficiency58.2589
24PuneTotal_Waste17.5000

data all_routes;

    set waste_routes_raw 

        waste_routes_fraud;

run;

proc print data=all_routes;

run;

OUTPUT:

ObsRoute_IDCityRoute_DateDistance_kmWaste_Collected_TonsFuel_Used_LitersTime_Taken_HoursVehicle_TypeDriver_NameEfficiency_ScoreUtilization_ClassFraud_Flag
1R001Hyderabad01JAN20262512.5184CompactorRavi.  
2R002Hyderabad02JAN20263014.0225TipperKumar.  
3R003Chennai01JAN20262010.2153CompactorArjun.  
4R004Chennai03JAN20262816.8266TipperSuresh.  
5R005Mumbai01JAN20263520.0307CompactorRamesh.  
6R006Mumbai02JAN20264021.5368TipperMahesh.  
7R007Pune01JAN2026188.0143MiniTruckAjay.  
8R008Pune02JAN2026229.5164MiniTruckVijay.  
9R009Delhi01JAN20264524.0409CompactorDeepak.  
10R010Delhi03JAN20265026.54510TipperAman.  
11R011Jaipur01JAN20262011.0174MiniTruckRohit.  
12R012Jaipur02JAN20262412.2185MiniTruckMohan.  
13R013Kochi01JAN2026157.8103CompactorSajan.  
14R014Kochi02JAN2026178.5123CompactorAnil.  
15R015Indore03JAN20262613.5215TipperSanjay.  
16R001Hyderabad01JAN20262512.5184CompactorRavi69.44MEDIUMN
17R002Hyderabad02JAN20263014.0225TipperKumar63.64MEDIUMN
18R003Chennai01JAN20262010.2153CompactorArjun68.00MEDIUMN
19R004Chennai03JAN20262816.8266TipperSuresh64.62MEDIUMY
20R005Mumbai01JAN20263520.0307CompactorRamesh66.67MEDIUMY
21R006Mumbai02JAN20264021.5368TipperMahesh59.72LOWY
22R007Pune01JAN2026188.0143MiniTruckAjay57.14LOWN
23R008Pune02JAN2026229.5164MiniTruckVijay59.38LOWN
24R009Delhi01JAN20264524.0409CompactorDeepak60.00MEDIUMY
25R010Delhi03JAN20265026.54510TipperAman58.89LOWY
26R011Jaipur01JAN20262011.0174MiniTruckRohit64.71MEDIUMY
27R012Jaipur02JAN20262412.2185MiniTruckMohan67.78MEDIUMN
28R013Kochi01JAN2026157.8103CompactorSajan78.00HIGHN
29R014Kochi02JAN2026178.5123CompactorAnil70.83HIGHN
30R015Indore03JAN20262613.5215TipperSanjay64.29MEDIUMY

16. PROC DATASETS DELETE

proc datasets library=work;

    delete waste_routes_dates waste_routes_clean;

quit;

LOG:

NOTE: Deleting WORK.WASTE_ROUTES_DATES (memtype=DATA).
NOTE: Deleting WORK.WASTE_ROUTES_CLEAN (memtype=DATA).

17. 5 Key Points About This Project

1.     This project shows how waste collection route data can be created, cleaned, and analyzed using SAS in a real-world style.

2.     It explains how to measure route efficiency using distance, fuel usage, time taken, and waste collected.

3.     It demonstrates the use of macros for utilization classification and basic fraud detection logic.

4.     It covers important SAS procedures like PROC SQL, PROC MEANS, PROC FREQ, PROC UNIVARIATE, PROC CORR, and PROC SGPLOT.

5.     The project is written in a simple, step-by-step manner, making it easy to understand even for beginners.

18. Who Can Use and Read This Project?

·       SAS Beginners who want hands-on practice with real-life data

·       SAS Programmers preparing for interviews

·       Data Analysts working in government or urban planning domains

·       Students learning data analytics or statistics

·       Municipal or operations teams interested in route efficiency analysis

19. Conclusion

This Waste Collection Routes Analytics project explains how data can be used to improve daily municipal operations in a simple and practical way. Waste collection is an important activity for every city, and managing it efficiently helps save fuel, time, and money. Through this project, we created a realistic dataset and analyzed it using SAS to understand how distance, fuel usage, time taken, and waste collected are connected.

The project shows how efficiency can be calculated and how routes can be classified as high, medium, or low utilization. It also introduces a basic fraud detection idea by checking unusual fuel usage patterns. All steps are explained clearly, using simple logic and commonly used SAS procedures, so even beginners can follow along without confusion.

This project is useful not only for learning SAS but also for understanding how data supports decision-making in real life. It helps identify inefficient routes, possible data issues, and areas where operations can be improved. Overall, this project builds strong confidence in using SAS for practical analytics and prepares learners for interviews, real projects, and professional data analysis work in an easy and understandable way.


INTERVIEW QUESTIONS FOR YOU

1.What is the difference between PROC SQL and the DATA step?

2.What is the difference between INTCK and INTNX, and how are they useful in SAS date processing?

3.What is the difference between CALL SYMPUT and CALL SYMPUTX?

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

About the Author:

SAS Learning Hub is a data analytics and SAS programming platform focused on clinical, financial, and real-world data analysis. The content is created by professionals with academic training in Pharmaceutics and hands-on experience in Base SAS, PROC SQL, Macros, SDTM, and ADaM, providing practical and industry-relevant SAS learning resources.


Disclaimer:

The datasets and analysis in this article are created for educational and demonstration purposes only. They do not represent WASTE COLLECTION data.


Our Mission:

This blog provides industry-focused SAS programming tutorials and analytics projects covering finance, healthcare, and technology.


This project is suitable for:

·  Students learning SAS

·  Data analysts building portfolios

·  Professionals preparing for SAS interviews

·  Bloggers writing about analytics and smart cities

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Follow Us On : 


 
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

--->Follow our blog for more SAS-based analytics projects and industry data models.

---> Support Us By Following Our Blog..

To deepen your understanding of SAS analytics, please refer to our other data science and industry-focused projects listed below:

1. Are We Losing Wildlife Faster Than We Think? – Animal Conservation Analysis Using SAS

2.Can Modern Art Data Explain What Actually Sells? – A Real-World SAS Analytics Project

3.Which Vehicles Truly Perform Better on Indian Roads? – A Real-World SAS Analytics Project

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

About Us | Contact Privacy Policy



Comments

Popular posts from this blog

397.If a satellite has excellent signal strength but very high latency, can it still deliver good quality communication? Why or why not?A Sas Study

401.How Efficient Are Global Data Centers? A Complete SAS Analytics Study

383.Which Pharma Distributors Are High-Risk? Can SAS Detect Delays, Temperature Violations, and Fraud?