720.Can We Detect Errors, Prevent Fraud, And Optimize Biometric Access System Security Using Advanced SAS Programming?
Smart Biometric Security Analytics: Error Detection And Fraud Prevention With SAS
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
HERE IN THIS PROJECT WE USED THESE SAS STATEMENTS —DATA STEP | LENGTH | FORMAT | INPUT | DATALINES | SET | MERGE | IF-THEN-ELSE | PROC TRANSPOSE | PROC APPEND | PROC DATASETS DELETE | MACRO | %MEND | %MACRO CALL
Introduction
Biometric
authentication systems are increasingly used in modern security infrastructures
such as corporate offices, government facilities, airports, research
laboratories, and banking institutions. These systems rely on biometric
identifiers such as fingerprints, facial recognition, iris scans, voice
recognition, or palm vein detection to grant secure access.
However,
biometric systems produce large amounts of operational data. This data must be
monitored carefully to detect:
- authentication delays
- system misuse
- unusual failure rates
- fraud attempts
- system performance issues
Organizations
therefore analyze biometric system logs using data analytics tools.
SAS
(Statistical Analysis System) is widely used for this purpose because it
provides powerful capabilities for:
- data manipulation
- security analytics
- fraud detection
- operational reporting
In this
project, we simulate a Biometric Access Control Dataset and demonstrate
how SAS programming can be used to:
- detect data errors
- correct incorrect values
- standardize inconsistent
formats
- calculate security metrics
- detect potential fraud
- optimize system utilization
We
intentionally introduce errors into the dataset to simulate real-world data
issues and then demonstrate how SAS programming techniques resolve them.
Table Of Contents
- Business Context
- Dataset Design
- Intentional Error Dataset
Creation
- Error Identification
- Corrected Dataset Code
- Character Functions Usage
- Numeric Functions Usage
- Date Functions (MDY, INTCK,
INTNX)
- Dataset Combination (SET and
MERGE)
- Dataset Transformation
(TRANSPOSE)
- Dataset Extension (APPEND)
- Fraud Detection Macro
- Utilization Classification
- Dataset Cleanup Using PROC
DATASETS DELETE
- Business Insights
- 20 Key Points
- Conclusion
Business Context
Consider
a multinational company that uses biometric authentication across multiple
secure facilities. Each entry attempt is recorded with details such as:
- biometric type used
- authentication time
- failure rate
- security score
- system utilization
The
security team wants to analyze this dataset to answer questions such as:
- Which biometric system has
the highest failure rate?
- Are there suspicious access
attempts?
- Which systems have poor
security scores?
- Which locations experience
fraud attempts?
To answer
these questions, the security analytics team uses SAS programming.
Dataset Design
Our
dataset contains the following variables.
|
Variable |
Description |
|
System_ID |
Unique
system identifier |
|
Biometric_Type |
Fingerprint
/ Face / Iris etc |
|
Authentication_Time |
Seconds
required to authenticate |
|
Failure_Rate |
Percentage
of failed attempts |
|
False_Acceptance |
False
acceptance rate |
|
Usage_Count |
Number
of access attempts |
|
Security_Score |
Overall
security evaluation |
|
Percentage |
Performance
percentage |
|
Fees |
Maintenance
fee |
|
Access_Date |
Date of
authentication |
|
Location |
Access
location |
|
Utilization_Class |
System
utilization classification |
1. Creating Dataset With Intentional Errors
data biometric_raw;
length System_ID $5 Biometric_Type $20 Location $20;
input System_ID $ Biometric_Type:$20. Authentication_Time Failure_Rate False_Acceptance
Usage_Count Security_Score percentage fees Location $ Access_Date:ddmmyy10.;
format Access_Date date9.;
datalines;
S101 fingerprint 2.4 3.2 0.01 230 88 90 5000 delhi 01-02-2024
S102 Face_recognition 3.1 2.8 0.02 190 85 92 4500 mumbai 02-03-2024
S103 iris 1.8 1.1 0.01 250 91 94 5200 chennai 15-04-2024
S104 voice_recognition 4.0 5.5 0.05 120 70 80 4200 hyderabad 12-05-2024
S105 palm_vein 2.7 . 0.02 200 87 91 4700 pune 10-06-2024
S106 fingerprint 3.5 7.2 0.06 90 60 72 3900 kolkata 22-07-2024
S107 face_recognition 2.9 2.2 0.02 210 89 93 5100 delhi 10-08-2024
S108 iris 1.7 1.0 0.01 260 92 95 5300 chennai 12-09-2024
S109 voice_recognition 4.3 6.1 0.07 100 65 70 3800 bangalore 14-10-2024
S110 palm_vein 2.6 2.0 0.02 215 90 92 5000 hyderabad 21-11-2024
S111 fingerprint 3.0 3.5 0.03 180 84 88 4500 mumbai 05-12-2024
S112 face_recognition 3.4 4.0 0.04 160 80 85 4300 pune 10-01-2025
S113 iris 1.9 1.2 0.01 240 93 96 5400 chennai 20-02-2025
;
run;
proc print data=biometric_raw;
run;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | fingerprint | delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 |
| 2 | S102 | Face_recognition | mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 |
| 3 | S103 | iris | chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 |
| 4 | S104 | voice_recognition | hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 |
| 5 | S105 | palm_vein | pune | 2.7 | . | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 |
| 6 | S106 | fingerprint | kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 |
| 7 | S107 | face_recognition | delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 |
| 8 | S108 | iris | chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 |
| 9 | S109 | voice_recognition | bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 |
| 10 | S110 | palm_vein | hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 |
| 11 | S111 | fingerprint | mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 |
| 12 | S112 | face_recognition | pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 |
| 13 | S113 | iris | chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 |
Errors In The Dataset
The dataset contains several intentional
errors.
Error 1: Date Format Issue
Dates are written as:
01-02-2024
But SAS expects a date input format.
Error
2: Missing Value
Failure rate is missing for System_ID S105.
Error
3: Inconsistent Case
Biometric types appear as:
fingerprintFace recognitioniris
Case inconsistency affects reporting.
Error
4: Character Formatting Issues
Extra spaces and inconsistent capitalization
appear in several variables.
2. Corrected Dataset Code
data biometric_clean;
set biometric_raw;
Biometric_Type = propcase(strip(Biometric_Type));
Location = propcase(strip(Location));
Failure_Rate = coalesce(Failure_Rate,0);
Auth_Rounded = round(Authentication_Time,0.1);
Usage_Adjusted = abs(Usage_Count);
Access_Month = intnx('month',Access_Date,0,'b');
Access_Duration = intck('day',mdy(1,1,2024),Access_Date);
Utilization_Class =
ifc(Usage_Count >220,"High",
ifc(Usage_Count >150,"Medium","Low"));
run;
proc print data=biometric_clean;
run;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date | Auth_Rounded | Usage_Adjusted | Access_Month | Access_Duration | Utilization_Class |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 2 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 3 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 4 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 5 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 6 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 7 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 8 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 9 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 10 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 11 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 12 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 13 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
SET Statement
set biometric_raw;
Reads observations from the raw dataset.
STRIP
Function
strip()
Removes leading and trailing spaces.
PROPCASE
Function
propcase()
Converts text to proper case.
Example
face recognition → Face Recognition
COALESCE
Function
coalesce(Failure_Rate,0)
Replaces missing values with zero.
ROUND
Function
round(Authentication_Time,0.1)
Rounds authentication time to 1 decimal place.
ABS
Function
abs()
Ensures numeric values remain positive.
Date Functions
MDY
mdy(1,1,2024)Creates SAS date.
INTCK
intck('day',start,end)Counts number of days between two dates.
INTNX
intnx('month',date,0,'b')
Returns beginning of the month.
3. Dataset Combination Using SET
data biometric_archive;
set biometric_clean
biometric_clean;
run;
proc print data=biometric_archive;
run;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date | Auth_Rounded | Usage_Adjusted | Access_Month | Access_Duration | Utilization_Class |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 2 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 3 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 4 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 5 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 6 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 7 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 8 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 9 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 10 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 11 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 12 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 13 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
| 14 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 15 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 16 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 17 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 18 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 19 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 20 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 21 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 22 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 23 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 24 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 25 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 26 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
SET stacks datasets vertically.
4. Dataset Merge
proc sort data=biometric_clean;by System_ID;run;
proc print data=biometric_clean;
run;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date | Auth_Rounded | Usage_Adjusted | Access_Month | Access_Duration | Utilization_Class |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 2 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 3 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 4 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 5 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 6 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 7 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 8 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 9 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 10 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 11 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 12 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 13 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
proc sort data=biometric_archive;by System_ID;run;
proc print data=biometric_archive;
run;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date | Auth_Rounded | Usage_Adjusted | Access_Month | Access_Duration | Utilization_Class |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 2 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 3 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 4 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 5 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 6 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 7 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 8 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 9 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 10 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 11 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 12 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 13 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 14 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 15 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 16 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 17 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 18 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 19 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 20 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 21 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 22 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 23 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 24 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 25 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
| 26 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
data security_merge;
merge biometric_clean
biometric_archive;
by System_ID;
run;
proc print data=security_merge;
run;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date | Auth_Rounded | Usage_Adjusted | Access_Month | Access_Duration | Utilization_Class |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 2 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 3 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 4 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 5 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 6 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 7 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 8 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 9 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 10 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 11 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 12 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 13 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 14 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 15 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 16 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 17 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 18 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 19 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 20 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 21 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 22 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 23 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 24 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 25 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
| 26 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
MERGE combines datasets horizontally.
5. Dataset Transpose
proc transpose data=biometric_clean out=biometric_transposed;
var Authentication_Time Failure_Rate Security_Score;
run;
proc print data=biometric_transposed;
run;
OUTPUT:
| Obs | _NAME_ | COL1 | COL2 | COL3 | COL4 | COL5 | COL6 | COL7 | COL8 | COL9 | COL10 | COL11 | COL12 | COL13 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Authentication_Time | 2.4 | 3.1 | 1.8 | 4.0 | 2.7 | 3.5 | 2.9 | 1.7 | 4.3 | 2.6 | 3.0 | 3.4 | 1.9 |
| 2 | Failure_Rate | 3.2 | 2.8 | 1.1 | 5.5 | 0.0 | 7.2 | 2.2 | 1.0 | 6.1 | 2.0 | 3.5 | 4.0 | 1.2 |
| 3 | Security_Score | 88.0 | 85.0 | 91.0 | 70.0 | 87.0 | 60.0 | 89.0 | 92.0 | 65.0 | 90.0 | 84.0 | 80.0 | 93.0 |
TRANSPOSE rotates dataset structure.
6. Append Example
proc append base=biometric_archive
data=biometric_clean;
run;
proc print data=biometric_archive;
run;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date | Auth_Rounded | Usage_Adjusted | Access_Month | Access_Duration | Utilization_Class |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 2 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 3 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 4 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 5 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 6 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 7 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 8 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 9 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 10 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 11 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 12 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 13 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 14 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 15 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 16 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 17 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 18 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 19 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 20 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 21 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 22 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 23 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 24 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 25 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
| 26 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
| 27 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High |
| 28 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium |
| 29 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High |
| 30 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low |
| 31 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium |
| 32 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low |
| 33 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium |
| 34 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High |
| 35 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low |
| 36 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium |
| 37 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium |
| 38 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium |
| 39 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High |
TRANSPOSE rotates dataset structure.
7. Fraud Detection Macro
%macro fraud_detection;
data fraud_flag;
set biometric_clean;
if Failure_Rate >5 and False_Acceptance >0.05 then Fraud_Flag="YES";
else Fraud_Flag="NO";
run;
proc print data=fraud_flag;
run;
%mend;
%fraud_detection;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date | Auth_Rounded | Usage_Adjusted | Access_Month | Access_Duration | Utilization_Class | Fraud_Flag |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High | NO |
| 2 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium | NO |
| 3 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High | NO |
| 4 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low | NO |
| 5 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium | NO |
| 6 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low | YES |
| 7 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium | NO |
| 8 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High | NO |
| 9 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low | YES |
| 10 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium | NO |
| 11 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium | NO |
| 12 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium | NO |
| 13 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High | NO |
Macro Explanation
Macros allow reusable SAS programs.
Fraud logic:
High failure rateANDHigh false acceptance
These patterns indicate possible fraud
attempts.
8. Utilization Classification
%macro Utilization;
data Utilization;
set biometric_clean;
length Utilization $8.;
if Usage_Count > 220 then Utilization="HIGH";
else if 150 < Usage_Count < 220 then Utilization="MEDIUM";
else Utilization="LOW";
run;
proc print data=Utilization;
run;
%mend;
%Utilization;
OUTPUT:
| Obs | System_ID | Biometric_Type | Location | Authentication_Time | Failure_Rate | False_Acceptance | Usage_Count | Security_Score | percentage | fees | Access_Date | Auth_Rounded | Usage_Adjusted | Access_Month | Access_Duration | Utilization_Class | Utilization |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | S101 | Fingerprint | Delhi | 2.4 | 3.2 | 0.01 | 230 | 88 | 90 | 5000 | 01FEB2024 | 2.4 | 230 | 23407 | 31 | High | HIGH |
| 2 | S102 | Face_recognition | Mumbai | 3.1 | 2.8 | 0.02 | 190 | 85 | 92 | 4500 | 02MAR2024 | 3.1 | 190 | 23436 | 61 | Medium | MEDIUM |
| 3 | S103 | Iris | Chennai | 1.8 | 1.1 | 0.01 | 250 | 91 | 94 | 5200 | 15APR2024 | 1.8 | 250 | 23467 | 105 | High | HIGH |
| 4 | S104 | Voice_recognition | Hyderabad | 4.0 | 5.5 | 0.05 | 120 | 70 | 80 | 4200 | 12MAY2024 | 4.0 | 120 | 23497 | 132 | Low | LOW |
| 5 | S105 | Palm_vein | Pune | 2.7 | 0.0 | 0.02 | 200 | 87 | 91 | 4700 | 10JUN2024 | 2.7 | 200 | 23528 | 161 | Medium | MEDIUM |
| 6 | S106 | Fingerprint | Kolkata | 3.5 | 7.2 | 0.06 | 90 | 60 | 72 | 3900 | 22JUL2024 | 3.5 | 90 | 23558 | 203 | Low | LOW |
| 7 | S107 | Face_recognition | Delhi | 2.9 | 2.2 | 0.02 | 210 | 89 | 93 | 5100 | 10AUG2024 | 2.9 | 210 | 23589 | 222 | Medium | MEDIUM |
| 8 | S108 | Iris | Chennai | 1.7 | 1.0 | 0.01 | 260 | 92 | 95 | 5300 | 12SEP2024 | 1.7 | 260 | 23620 | 255 | High | HIGH |
| 9 | S109 | Voice_recognition | Bangalore | 4.3 | 6.1 | 0.07 | 100 | 65 | 70 | 3800 | 14OCT2024 | 4.3 | 100 | 23650 | 287 | Low | LOW |
| 10 | S110 | Palm_vein | Hyderabad | 2.6 | 2.0 | 0.02 | 215 | 90 | 92 | 5000 | 21NOV2024 | 2.6 | 215 | 23681 | 325 | Medium | MEDIUM |
| 11 | S111 | Fingerprint | Mumbai | 3.0 | 3.5 | 0.03 | 180 | 84 | 88 | 4500 | 05DEC2024 | 3.0 | 180 | 23711 | 339 | Medium | MEDIUM |
| 12 | S112 | Face_recognition | Pune | 3.4 | 4.0 | 0.04 | 160 | 80 | 85 | 4300 | 10JAN2025 | 3.4 | 160 | 23742 | 375 | Medium | MEDIUM |
| 13 | S113 | Iris | Chennai | 1.9 | 1.2 | 0.01 | 240 | 93 | 96 | 5400 | 20FEB2025 | 1.9 | 240 | 23773 | 416 | High | HIGH |
Systems
are classified based on usage.
|
Usage
Count |
Category |
|
High |
>220 |
|
Medium |
150–220 |
|
Low |
<150 |
9.PROC DATASETS DELETE
proc datasets library=work;
delete biometric_archive biometric_transposed;
quit;
OUTPUT:
Deletes unnecessary datasets.
Advantages:
·
frees memory
·
reduces clutter
·
improves efficiency
10. Business Insights
Using SAS analysis we can identify:
High Risk Systems
Systems with:
·
high failure rate
·
high false acceptance
Efficient Systems
Low authentication time and high security
score.
Underutilized Systems
Low usage count systems may indicate:
·
poor placement
·
user dissatisfaction
·
Dataset Creation for Biometric Access
Systems Using SAS DATA Step and DATALINES
·
Simulation of Real-World Data Issues by Introducing
Intentional Errors
·
Data Cleaning and Standardization Using
Character Functions like STRIP and TRIM
·
Text Formatting and Case Standardization
Using PROPCASE, UPCASE, and LOWCASE
·
Handling Missing Values in Security Data
Using COALESCE Function
·
Numeric Data Correction and Precision
Handling Using ROUND and ABS Functions
·
Date Construction and Formatting Using
MDY Function
·
Time Interval and Activity Duration
Analysis Using INTCK Function
·
Monthly Time Period Derivation Using
INTNX Function
·
Vertical Dataset Combination Using SET
Statement
·
Horizontal Dataset Integration Using
MERGE Statement
·
Dataset Restructuring for Analytical Reporting
Using PROC TRANSPOSE
·
Incremental Data Addition Using PROC
APPEND
·
System Utilization Classification Based
on Usage_Count Logic
·
Fraud Detection Logic Based on Failure
Rate and False Acceptance Thresholds
·
Automation of Fraud Detection Process
Using SAS MACROS
·
Text Concatenation and Label Creation
Using CAT and CATX Functions
·
Detection and Correction of Data Quality
Issues in Security Logs
·
Workspace and Dataset Management Using
PROC DATASETS DELETE
·
Generating Security and Performance
Insights for Biometric Authentication Systems Using SAS Analytics
Conclusion
This project demonstrates how SAS programming
can be used to analyze and improve biometric access systems.
· Real
datasets contain errors and inconsistencies
·
SAS provides powerful tools to clean
data
·
Character functions standardize text
·
Numeric functions correct values
·
Date functions analyze time patterns
·
Macros automate fraud detection
·
Dataset operations support advanced
analysis
Using these techniques, organizations
can ensure that biometric authentication systems remain reliable, secure, and
fraud-resistant.
SAS INTERVIEW QUESTIONS
·
What is %STR and %NRSTR?
·
What is %DO loop?
·
What is SYMGET function?
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
About the Author:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
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 PARKING SYSTEM 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
· Clinical SAS Programmer
· Research Data Analyst
· Regulatory Data Validator
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Comments
Post a Comment