366.CUSTOMER SUPPORT CENTERS PERFORMANCE AND EFFICIENCY ANALYSIS USING PROC SQL | PROC MEANS | PROC REG | PROC SGPLOT | DATA STEP | MACROS | DATE FUNCTIONS (MDY-INTNX-INTCK) | MERGE | APPEND | SET | TRANSPOSE

CUSTOMER SUPPORT CENTERS PERFORMANCE AND EFFICIENCY ANALYSIS USING PROC SQL |  PROC MEANS | PROC REG | PROC SGPLOT | DATA STEP | MACROS | DATE FUNCTIONS  (MDY-INTNX-INTCK) | MERGE | APPEND | SET | TRANSPOSE

 options nocenter;

1.Creating the Raw Customer Support Dataset

data support_raw; 

    length Company_Name $20;

    format Report_Date date9.;

    infile datalines dlm='|' dsd;

    input Company_Name $ Tickets_Per_Day Resolution_Time Satisfaction_Score 

          Staff_Count Report_Date : date9.;

    datalines;

QuickAssist|380|5.1|85|110|05JAN2024

CallEase|460|7.5|78|135|08JAN2024

SupportPro|500|6.0|88|150|12JAN2024

HelpDeskNow|340|4.8|90|95|15JAN2024

VoiceCare|390|6.8|80|115|18JAN2024

AnswerHub|300|4.5|92|90|22JAN2024

SolveFast|450|5.4|87|130|25JAN2024

ServicePlus|410|5.9|84|125|28JAN2024

CareConnect|470|7.2|79|140|30JAN2024

TechResolve|480|6.6|81|145|02FEB2024

CustomerFirst|360|4.9|89|100|05FEB2024

;

run;

proc print data=support_raw;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_Count
1QuickAssist05JAN20243805.185110
2CallEase08JAN20244607.578135
3SupportPro12JAN20245006.088150
4HelpDeskNow15JAN20243404.89095
5VoiceCare18JAN20243906.880115
6AnswerHub22JAN20243004.59290
7SolveFast25JAN20244505.487130
8ServicePlus28JAN20244105.984125
9CareConnect30JAN20244707.279140
10TechResolve02FEB20244806.681145
11CustomerFirst05FEB20243604.989100


2.Creating Future and Past Report Dates Using INTNX

data support_dates;

    set support_raw;

    Next_Report = intnx('month', Report_Date, 1);

    Prev_Report = intnx('month', Report_Date, -1);

    format Next_Report Prev_Report date9.;

run;

proc print data=support_dates;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_CountNext_ReportPrev_Report
1QuickAssist05JAN20243805.18511001FEB202401DEC2023
2CallEase08JAN20244607.57813501FEB202401DEC2023
3SupportPro12JAN20245006.08815001FEB202401DEC2023
4HelpDeskNow15JAN20243404.8909501FEB202401DEC2023
5VoiceCare18JAN20243906.88011501FEB202401DEC2023
6AnswerHub22JAN20243004.5929001FEB202401DEC2023
7SolveFast25JAN20244505.48713001FEB202401DEC2023
8ServicePlus28JAN20244105.98412501FEB202401DEC2023
9CareConnect30JAN20244707.27914001FEB202401DEC2023
10TechResolve02FEB20244806.68114501MAR202401JAN2024
11CustomerFirst05FEB20243604.98910001MAR202401JAN2024


3.Calculate Days Between Reports Using INTCK

data support_gap;

    set support_dates;

    Days_Between = intck('day', Prev_Report, Next_Report);

run;

proc print data=support_gap;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_CountNext_ReportPrev_ReportDays_Between
1QuickAssist05JAN20243805.18511001FEB202401DEC202362
2CallEase08JAN20244607.57813501FEB202401DEC202362
3SupportPro12JAN20245006.08815001FEB202401DEC202362
4HelpDeskNow15JAN20243404.8909501FEB202401DEC202362
5VoiceCare18JAN20243906.88011501FEB202401DEC202362
6AnswerHub22JAN20243004.5929001FEB202401DEC202362
7SolveFast25JAN20244505.48713001FEB202401DEC202362
8ServicePlus28JAN20244105.98412501FEB202401DEC202362
9CareConnect30JAN20244707.27914001FEB202401DEC202362
10TechResolve02FEB20244806.68114501MAR202401JAN202460
11CustomerFirst05FEB20243604.98910001MAR202401JAN202460


4.Performance Index Creation Using DATA Step

data support_perf;

    set support_gap;

    Performance_Index = (Satisfaction_Score * 100) / (Resolution_Time * Tickets_Per_Day);

run;

proc print data=support_perf;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_CountNext_ReportPrev_ReportDays_BetweenPerformance_Index
1QuickAssist05JAN20243805.18511001FEB202401DEC2023624.38596
2CallEase08JAN20244607.57813501FEB202401DEC2023622.26087
3SupportPro12JAN20245006.08815001FEB202401DEC2023622.93333
4HelpDeskNow15JAN20243404.8909501FEB202401DEC2023625.51471
5VoiceCare18JAN20243906.88011501FEB202401DEC2023623.01659
6AnswerHub22JAN20243004.5929001FEB202401DEC2023626.81481
7SolveFast25JAN20244505.48713001FEB202401DEC2023623.58025
8ServicePlus28JAN20244105.98412501FEB202401DEC2023623.47251
9CareConnect30JAN20244707.27914001FEB202401DEC2023622.33452
10TechResolve02FEB20244806.68114501MAR202401JAN2024602.55682
11CustomerFirst05FEB20243604.98910001MAR202401JAN2024605.04535


5.SQL Summary of Customer Support Centers

proc sql;

    create table support_summary as

    select Company_Name,

           avg(Tickets_Per_Day) as Avg_Tickets,

           avg(Resolution_Time) as Avg_Resolution,

           avg(Satisfaction_Score) as Avg_Satisfaction,

           sum(Staff_Count) as Total_Staff

    from support_perf

    group by Company_Name;

quit;

proc print data=support_summary;

run;

OUTPUT:

ObsCompany_NameAvg_TicketsAvg_ResolutionAvg_SatisfactionTotal_Staff
1AnswerHub3004.59290
2CallEase4607.578135
3CareConnect4707.279140
4CustomerFirst3604.989100
5HelpDeskNow3404.89095
6QuickAssist3805.185110
7ServicePlus4105.984125
8SolveFast4505.487130
9SupportPro5006.088150
10TechResolve4806.681145
11VoiceCare3906.880115


6.Statistical Analysis – PROC MEANS

proc means data=support_perf mean min max;

    var Tickets_Per_Day Resolution_Time Satisfaction_Score Staff_Count Performance_Index;

run;

OUTPUT:

The MEANS Procedure

VariableMeanMinimumMaximum
Tickets_Per_Day
Resolution_Time
Satisfaction_Score
Staff_Count
Performance_Index
412.7272727
5.8818182
84.8181818
121.3636364
3.8105201
300.0000000
4.5000000
78.0000000
90.0000000
2.2608696
500.0000000
7.5000000
92.0000000
150.0000000
6.8148148

7.Regression Analysis – Impact of Staff on Satisfaction

proc reg data=support_perf;

    model Satisfaction_Score = Staff_Count Tickets_Per_Day Resolution_Time;

run;

quit;

OUTPUT:

The REG Procedure

Model: MODEL1

Dependent Variable: Satisfaction_Score

Number of Observations Read11
Number of Observations Used11
Analysis of Variance
SourceDFSum of
Squares
Mean
Square
F ValuePr > F
Model3206.1491968.7164020.480.0008
Error723.487183.35531  
Corrected Total10229.63636   
Root MSE1.83175R-Square0.8977
Dependent Mean84.81818Adj R-Sq0.8539
Coeff Var2.15962  
Parameter Estimates
VariableDFParameter
Estimate
Standard
Error
t ValuePr > |t|
Intercept1109.453174.4384124.66<.0001
Staff_Count10.077800.195580.400.7026
Tickets_Per_Day1-0.010780.06170-0.170.8662
Resolution_Time1-5.037080.84092-5.990.0005

The REG Procedure

Model: MODEL1

Dependent Variable: Satisfaction_Score

Panel of fit diagnostics for Satisfaction_Score.
Panel of scatterplots of residuals by regressors for Satisfaction_Score.

8.Visualization – PROC SGPLOT

proc sgplot data=support_perf;

    scatter x=Tickets_Per_Day y=Satisfaction_Score;

    reg x=Tickets_Per_Day y=Satisfaction_Score;

run;

OUTPUT:

The SGPlot Procedure


9.Macro for Performance Ranking

%macro rank_performance;

    data support_rank;

       length Rank $20.;

        set support_perf;

        if Performance_Index > 4 then Rank="EXCELLENT";

        else if Performance_Index > 3 then Rank="GOOD";

        else Rank="NEEDS IMPROVEMENT";

    run;

proc print data=support_rank;

    run;

%mend;


%rank_performance;

OUTPUT:

ObsRankCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_CountNext_ReportPrev_ReportDays_BetweenPerformance_Index
1EXCELLENTQuickAssist05JAN20243805.18511001FEB202401DEC2023624.38596
2NEEDS IMPROVEMENTCallEase08JAN20244607.57813501FEB202401DEC2023622.26087
3NEEDS IMPROVEMENTSupportPro12JAN20245006.08815001FEB202401DEC2023622.93333
4EXCELLENTHelpDeskNow15JAN20243404.8909501FEB202401DEC2023625.51471
5GOODVoiceCare18JAN20243906.88011501FEB202401DEC2023623.01659
6EXCELLENTAnswerHub22JAN20243004.5929001FEB202401DEC2023626.81481
7GOODSolveFast25JAN20244505.48713001FEB202401DEC2023623.58025
8GOODServicePlus28JAN20244105.98412501FEB202401DEC2023623.47251
9NEEDS IMPROVEMENTCareConnect30JAN20244707.27914001FEB202401DEC2023622.33452
10NEEDS IMPROVEMENTTechResolve02FEB20244806.68114501MAR202401JAN2024602.55682
11EXCELLENTCustomerFirst05FEB20243604.98910001MAR202401JAN2024605.04535


10.Transpose for Reporting

proc transpose data=support_rank out=support_transposed;

    by Company_Name NotSorted;

    var Tickets_Per_Day Resolution_Time Satisfaction_Score;

run;

proc print data=support_transposed;

run;

OUTPUT:

ObsCompany_Name_NAME_COL1
1QuickAssistTickets_Per_Day380.0
2QuickAssistResolution_Time5.1
3QuickAssistSatisfaction_Score85.0
4CallEaseTickets_Per_Day460.0
5CallEaseResolution_Time7.5
6CallEaseSatisfaction_Score78.0
7SupportProTickets_Per_Day500.0
8SupportProResolution_Time6.0
9SupportProSatisfaction_Score88.0
10HelpDeskNowTickets_Per_Day340.0
11HelpDeskNowResolution_Time4.8
12HelpDeskNowSatisfaction_Score90.0
13VoiceCareTickets_Per_Day390.0
14VoiceCareResolution_Time6.8
15VoiceCareSatisfaction_Score80.0
16AnswerHubTickets_Per_Day300.0
17AnswerHubResolution_Time4.5
18AnswerHubSatisfaction_Score92.0
19SolveFastTickets_Per_Day450.0
20SolveFastResolution_Time5.4
21SolveFastSatisfaction_Score87.0
22ServicePlusTickets_Per_Day410.0
23ServicePlusResolution_Time5.9
24ServicePlusSatisfaction_Score84.0
25CareConnectTickets_Per_Day470.0
26CareConnectResolution_Time7.2
27CareConnectSatisfaction_Score79.0
28TechResolveTickets_Per_Day480.0
29TechResolveResolution_Time6.6
30TechResolveSatisfaction_Score81.0
31CustomerFirstTickets_Per_Day360.0
32CustomerFirstResolution_Time4.9
33CustomerFirstSatisfaction_Score89.0


11.Creating a New Month Dataset

data support_feb; 

    length Company_Name $20;

    format Report_Date date9.;

    infile datalines dlm='|' dsd;

    input Company_Name $ Tickets_Per_Day Resolution_Time Satisfaction_Score 

          Staff_Count Report_Date : date9.;

    datalines;

TeleHelp|440|6.0|84|122|01FEB2024

QuickAssist|395|5.0|86|112|01FEB2024

;

run;

proc print data=support_feb;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_Count
1TeleHelp01FEB2024440684122
2QuickAssist01FEB2024395586112


12.Append February Data

proc append base=support_raw 

            data=support_feb;

run;

proc print data=support_raw;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_Count
1QuickAssist05JAN20243805.185110
2CallEase08JAN20244607.578135
3SupportPro12JAN20245006.088150
4HelpDeskNow15JAN20243404.89095
5VoiceCare18JAN20243906.880115
6AnswerHub22JAN20243004.59290
7SolveFast25JAN20244505.487130
8ServicePlus28JAN20244105.984125
9CareConnect30JAN20244707.279140
10TechResolve02FEB20244806.681145
11CustomerFirst05FEB20243604.989100
12TeleHelp01FEB20244406.084122
13QuickAssist01FEB20243955.086112


13.Merge Example

proc sort data=support_raw; by Company_Name; run;

proc print data=support_raw;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_Count
1AnswerHub22JAN20243004.59290
2CallEase08JAN20244607.578135
3CareConnect30JAN20244707.279140
4CustomerFirst05FEB20243604.989100
5HelpDeskNow15JAN20243404.89095
6QuickAssist05JAN20243805.185110
7QuickAssist01FEB20243955.086112
8ServicePlus28JAN20244105.984125
9SolveFast25JAN20244505.487130
10SupportPro12JAN20245006.088150
11TechResolve02FEB20244806.681145
12TeleHelp01FEB20244406.084122
13VoiceCare18JAN20243906.880115


proc sort data=support_rank; by Company_Name; run;

proc print data=support_rank;

run;

OUTPUT:

ObsRankCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_CountNext_ReportPrev_ReportDays_BetweenPerformance_Index
1EXCELLENTAnswerHub22JAN20243004.5929001FEB202401DEC2023626.81481
2NEEDS IMPROVEMENTCallEase08JAN20244607.57813501FEB202401DEC2023622.26087
3NEEDS IMPROVEMENTCareConnect30JAN20244707.27914001FEB202401DEC2023622.33452
4EXCELLENTCustomerFirst05FEB20243604.98910001MAR202401JAN2024605.04535
5EXCELLENTHelpDeskNow15JAN20243404.8909501FEB202401DEC2023625.51471
6EXCELLENTQuickAssist05JAN20243805.18511001FEB202401DEC2023624.38596
7GOODServicePlus28JAN20244105.98412501FEB202401DEC2023623.47251
8GOODSolveFast25JAN20244505.48713001FEB202401DEC2023623.58025
9NEEDS IMPROVEMENTSupportPro12JAN20245006.08815001FEB202401DEC2023622.93333
10NEEDS IMPROVEMENTTechResolve02FEB20244806.68114501MAR202401JAN2024602.55682
11GOODVoiceCare18JAN20243906.88011501FEB202401DEC2023623.01659


data support_merge;

    merge support_raw support_rank;

    by Company_Name;

run;

proc print data=support_merge;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_CountRankNext_ReportPrev_ReportDays_BetweenPerformance_Index
1AnswerHub22JAN20243004.59290EXCELLENT01FEB202401DEC2023626.81481
2CallEase08JAN20244607.578135NEEDS IMPROVEMENT01FEB202401DEC2023622.26087
3CareConnect30JAN20244707.279140NEEDS IMPROVEMENT01FEB202401DEC2023622.33452
4CustomerFirst05FEB20243604.989100EXCELLENT01MAR202401JAN2024605.04535
5HelpDeskNow15JAN20243404.89095EXCELLENT01FEB202401DEC2023625.51471
6QuickAssist05JAN20243805.185110EXCELLENT01FEB202401DEC2023624.38596
7QuickAssist01FEB20243955.086112EXCELLENT01FEB202401DEC2023624.38596
8ServicePlus28JAN20244105.984125GOOD01FEB202401DEC2023623.47251
9SolveFast25JAN20244505.487130GOOD01FEB202401DEC2023623.58025
10SupportPro12JAN20245006.088150NEEDS IMPROVEMENT01FEB202401DEC2023622.93333
11TechResolve02FEB20244806.681145NEEDS IMPROVEMENT01MAR202401JAN2024602.55682
12TeleHelp01FEB20244406.084122 ....
13VoiceCare18JAN20243906.880115GOOD01FEB202401DEC2023623.01659


14.Set Statement Example

data support_all;

    set support_raw 

        support_feb;

run;

proc print data=support_all;

run;

OUTPUT:

ObsCompany_NameReport_DateTickets_Per_DayResolution_TimeSatisfaction_ScoreStaff_Count
1AnswerHub22JAN20243004.59290
2CallEase08JAN20244607.578135
3CareConnect30JAN20244707.279140
4CustomerFirst05FEB20243604.989100
5HelpDeskNow15JAN20243404.89095
6QuickAssist05JAN20243805.185110
7QuickAssist01FEB20243955.086112
8ServicePlus28JAN20244105.984125
9SolveFast25JAN20244505.487130
10SupportPro12JAN20245006.088150
11TechResolve02FEB20244806.681145
12TeleHelp01FEB20244406.084122
13VoiceCare18JAN20243906.880115
14TeleHelp01FEB20244406.084122
15QuickAssist01FEB20243955.086112


To Visit My Previous Different Types Of Oils Dataset:Click Here
To Visit My Previous Different Types Of Series 2025 Dataset:Click Here
To Visit My Previous Analyzing Yoga Asanas Worldwide Dataset:Click Here
To Visit My Previous Analyzing Indian Languages Dataset:Click Here  



Follow Us On : 


 



---> FOLLOW OUR BLOG FOR MORE INFORMATION.

--->PLEASE DO COMMENTS AND SHARE OUR BLOG.




Comments

Popular posts from this blog

409.Can We Build a Reliable Emergency Services Analytics & Fraud Detection System in SAS While Identifying and Fixing Intentional Errors?

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