208.ANALYZING GLOBAL BANK FRAUDSTERS DATASET USING PROC PRINT | PROC MEANS | PROC FREQ | PROC SQL | PROC SGPLOT | PROC MACRO | IN SAS FOR INSIGHTS ON FINANCIAL CRIME TYPES TRENDS PENALTIES RISKS WORLDWIDEANALYZING GLOBAL BANK FRAUDSTERS DATASET USING PROC PRINT | PROC MEANS | PROC FREQ | PROC SQL | PROC SGPLOT | PROC MACRO | IN SAS FOR INSIGHTS ON FINANCIAL CRIME TYPES TRENDS PENALTIES RISKS WORLDWIDE

ANALYZING GLOBAL BANK FRAUDSTERS DATASET USING PROC PRINT | PROC MEANS | PROC FREQ | PROC SQL | PROC SGPLOT | PROC MACRO | IN SAS FOR INSIGHTS ON FINANCIAL CRIME TYPES TRENDS PENALTIES RISKS WORLDWIDE

 /*Different types of bank fraudsters worldwide*/

STEP 1: DATASET CREATION

data Bank_Fraudsters;

    length Fraud_ID 8 

           Fraudster_Name $25 

           Country $20 

           Fraud_Type $30 

           Amount_Lost_USD 8 

           Year 8 

           Method $25 

           Caught $3 

           Penalty_Years 8;

    input Fraud_ID Fraudster_Name $ Country $ Fraud_Type $ Amount_Lost_USD Year Method $ Caught $ Penalty_Years;

    datalines;

1 John_Doe USA Identity_Theft 125000 2019 Online_Yield Yes 5

2 Raj_Patel India Card_Cloning 84000 2020 ATM_Hack No .

3 Mei_Wang China Money_Laundering 430000 2021 Shell_Companies Yes 10

4 Carlos_Soto Mexico Loan_Scam 59000 2018 Fake_Records Yes 3

5 Fatima_Ali UAE Phishing 72000 2022 Email_Spoofing No .

6 Ivan_Kuznetsov Russia Crypto_Scam 205000 2021 Blockchain_Fraud No .

7 Jean_Martin France Investment_Fraud 110000 2020 Ponzi_Scheme Yes 6

8 Linda_Kim South_Korea Skimming 63000 2019 ATM_Device Yes 4

9 George_Smith UK Account_Takeover 95000 2022 SIM_Swap No .

10 Akira_Tanaka Japan Check_Fraud 27000 2018 Forged_Cheques Yes 2

11 Ahmed_Khan Pakistan Online_Scam 34000 2021 Fake_Websites No .

12 Maria_Rojas Brazil Money_Laundering 470000 2020 Shell_Companies Yes 8

13 Bongani_Ndlovu South_Africa Phishing 59000 2019 Email_Spoofing Yes 3

14 Emily_Wilson Canada Identity_Theft 88000 2022 Fake_Documents No .

15 Elena_Popov Ukraine Card_Cloning 77000 2021 ATM_Hack Yes 5

16 Andrew_Blake Australia Loan_Scam 66000 2020 Fake_Credit No .

17 Hassan_Musa Nigeria Investment_Fraud 92000 2021 Ponzi_Scheme No .

18 Ingrid_Andersson Sweden Online_Scam 58000 2019 Fake_Ecommerce Yes 2

19 Gopal_Sharma India SIM_Swap 69000 2022 Mobile_Fraud Yes 4

20 Tommy_Nguyen Vietnam Crypto_Scam 230000 2021 Rug_Pull No .

;

run;

proc print;run;

Output:

Obs Fraud_ID Fraudster_Name Country Fraud_Type Amount_Lost_USD Year Method Caught Penalty_Years
1 1 John_Doe USA Identity_Theft 125000 2019 Online_Yield Yes 5
2 2 Raj_Patel India Card_Cloning 84000 2020 ATM_Hack No .
3 3 Mei_Wang China Money_Laundering 430000 2021 Shell_Companies Yes 10
4 4 Carlos_Soto Mexico Loan_Scam 59000 2018 Fake_Records Yes 3
5 5 Fatima_Ali UAE Phishing 72000 2022 Email_Spoofing No .
6 6 Ivan_Kuznetsov Russia Crypto_Scam 205000 2021 Blockchain_Fraud No .
7 7 Jean_Martin France Investment_Fraud 110000 2020 Ponzi_Scheme Yes 6
8 8 Linda_Kim South_Korea Skimming 63000 2019 ATM_Device Yes 4
9 9 George_Smith UK Account_Takeover 95000 2022 SIM_Swap No .
10 10 Akira_Tanaka Japan Check_Fraud 27000 2018 Forged_Cheques Yes 2
11 11 Ahmed_Khan Pakistan Online_Scam 34000 2021 Fake_Websites No .
12 12 Maria_Rojas Brazil Money_Laundering 470000 2020 Shell_Companies Yes 8
13 13 Bongani_Ndlovu South_Africa Phishing 59000 2019 Email_Spoofing Yes 3
14 14 Emily_Wilson Canada Identity_Theft 88000 2022 Fake_Documents No .
15 15 Elena_Popov Ukraine Card_Cloning 77000 2021 ATM_Hack Yes 5
16 16 Andrew_Blake Australia Loan_Scam 66000 2020 Fake_Credit No .
17 17 Hassan_Musa Nigeria Investment_Fraud 92000 2021 Ponzi_Scheme No .
18 18 Ingrid_Andersson Sweden Online_Scam 58000 2019 Fake_Ecommerce Yes 2
19 19 Gopal_Sharma India SIM_Swap 69000 2022 Mobile_Fraud Yes 4
20 20 Tommy_Nguyen Vietnam Crypto_Scam 230000 2021 Rug_Pull No .


STEP 2: PROC PRINT

proc print data=Bank_Fraudsters;

    title "Complete Bank Fraudsters Dataset";

run;

Output:

Complete Bank Fraudsters Dataset

Obs Fraud_ID Fraudster_Name Country Fraud_Type Amount_Lost_USD Year Method Caught Penalty_Years
1 1 John_Doe USA Identity_Theft 125000 2019 Online_Yield Yes 5
2 2 Raj_Patel India Card_Cloning 84000 2020 ATM_Hack No .
3 3 Mei_Wang China Money_Laundering 430000 2021 Shell_Companies Yes 10
4 4 Carlos_Soto Mexico Loan_Scam 59000 2018 Fake_Records Yes 3
5 5 Fatima_Ali UAE Phishing 72000 2022 Email_Spoofing No .
6 6 Ivan_Kuznetsov Russia Crypto_Scam 205000 2021 Blockchain_Fraud No .
7 7 Jean_Martin France Investment_Fraud 110000 2020 Ponzi_Scheme Yes 6
8 8 Linda_Kim South_Korea Skimming 63000 2019 ATM_Device Yes 4
9 9 George_Smith UK Account_Takeover 95000 2022 SIM_Swap No .
10 10 Akira_Tanaka Japan Check_Fraud 27000 2018 Forged_Cheques Yes 2
11 11 Ahmed_Khan Pakistan Online_Scam 34000 2021 Fake_Websites No .
12 12 Maria_Rojas Brazil Money_Laundering 470000 2020 Shell_Companies Yes 8
13 13 Bongani_Ndlovu South_Africa Phishing 59000 2019 Email_Spoofing Yes 3
14 14 Emily_Wilson Canada Identity_Theft 88000 2022 Fake_Documents No .
15 15 Elena_Popov Ukraine Card_Cloning 77000 2021 ATM_Hack Yes 5
16 16 Andrew_Blake Australia Loan_Scam 66000 2020 Fake_Credit No .
17 17 Hassan_Musa Nigeria Investment_Fraud 92000 2021 Ponzi_Scheme No .
18 18 Ingrid_Andersson Sweden Online_Scam 58000 2019 Fake_Ecommerce Yes 2
19 19 Gopal_Sharma India SIM_Swap 69000 2022 Mobile_Fraud Yes 4
20 20 Tommy_Nguyen Vietnam Crypto_Scam 230000 2021 Rug_Pull No .


STEP 3: PROC MEANS

proc means data=Bank_Fraudsters mean sum min max maxdec=2;

    var Amount_Lost_USD Penalty_Years;

    title "Descriptive Statistics of Financial Loss and Penalties";

run;

Output:

Descriptive Statistics of Financial Loss and Penalties

The MEANS Procedure

Variable Mean Sum Minimum Maximum
Amount_Lost_USD
Penalty_Years
125650.00
4.73
2513000.00
52.00
27000.00
2.00
470000.00
10.00


STEP 4: PROC FREQ

1. By Country:

proc freq data=Bank_Fraudsters;

    tables Country / nocum nopercent;

    title "Fraud Cases by Country";

run;

Output:

Fraud Cases by Country

The FREQ Procedure

Country Frequency
Australia 1
Brazil 1
Canada 1
China 1
France 1
India 2
Japan 1
Mexico 1
Nigeria 1
Pakistan 1
Russia 1
South_Africa 1
South_Korea 1
Sweden 1
UAE 1
UK 1
USA 1
Ukraine 1
Vietnam 1

2. By Fraud Type:

proc freq data=Bank_Fraudsters;

    tables Fraud_Type;

    title "Frequency of Fraud Types";

run;

Output:

Frequency of Fraud Types

The FREQ Procedure

Fraud_Type Frequency Percent Cumulative
Frequency
Cumulative
Percent
Account_Takeover 1 5.00 1 5.00
Card_Cloning 2 10.00 3 15.00
Check_Fraud 1 5.00 4 20.00
Crypto_Scam 2 10.00 6 30.00
Identity_Theft 2 10.00 8 40.00
Investment_Fraud 2 10.00 10 50.00
Loan_Scam 2 10.00 12 60.00
Money_Laundering 2 10.00 14 70.00
Online_Scam 2 10.00 16 80.00
Phishing 2 10.00 18 90.00
SIM_Swap 1 5.00 19 95.00
Skimming 1 5.00 20 100.00

3. Caught vs Not Caught:

proc freq data=Bank_Fraudsters;

    tables Caught;

    title "Caught vs Not Caught Fraudsters";

run;

Output:

Caught vs Not Caught Fraudsters

The FREQ Procedure

Caught Frequency Percent Cumulative
Frequency
Cumulative
Percent
No 9 45.00 9 45.00
Yes 11 55.00 20 100.00

STEP 5: PROC SQL ANALYSIS

1. Top 5 Highest Losses

proc sql outobs=5;

    title "Top 5 Fraud Cases by Amount Lost";

    select Fraudster_Name, Country, Fraud_Type, Amount_Lost_USD

    from Bank_Fraudsters

    order by Amount_Lost_USD desc;

quit;

Output:

Top 5 Fraud Cases by Amount Lost

Fraudster_Name Country Fraud_Type Amount_Lost_USD
Maria_Rojas Brazil Money_Laundering 470000
Mei_Wang China Money_Laundering 430000
Tommy_Nguyen Vietnam Crypto_Scam 230000
Ivan_Kuznetsov Russia Crypto_Scam 205000
John_Doe USA Identity_Theft 125000

2. Average Penalty for Caught Fraudsters

proc sql;

    title "Average Penalty (in Years) for Caught Fraudsters";

    select avg(Penalty_Years) as Avg_Penalty_Years

    from Bank_Fraudsters

    where Caught = 'Yes';

quit;

Output:

Average Penalty (in Years) for Caught Fraudsters

Avg_Penalty_Years
4.727273


3. Total Fraud Amount by Fraud Type

proc sql;

    title "Total Amount Lost by Fraud Type";

    select Fraud_Type, sum(Amount_Lost_USD) as Total_Loss format=dollar12.

    from Bank_Fraudsters

    group by Fraud_Type;

quit;

Output:

Total Amount Lost by Fraud Type

Fraud_Type Total_Loss
Account_Takeover $95,000
Card_Cloning $161,000
Check_Fraud $27,000
Crypto_Scam $435,000
Identity_Theft $213,000
Investment_Fraud $202,000
Loan_Scam $125,000
Money_Laundering $900,000
Online_Scam $92,000
Phishing $131,000
SIM_Swap $69,000
Skimming $63,000

STEP 6: USING MACROS FOR REPEATABLE ANALYSIS

%macro CountryFraud(countryname);

    title "Fraud Summary for &countryname.";

    proc sql;

        select Fraudster_Name, Fraud_Type, Amount_Lost_USD, Caught, Penalty_Years

        from Bank_Fraudsters

        where Country = "&countryname.";

    quit;

%mend;


%CountryFraud(India);

Output:

Fraud Summary for India

Fraudster_Name Fraud_Type Amount_Lost_USD Caught Penalty_Years
Raj_Patel Card_Cloning 84000 No .
Gopal_Sharma SIM_Swap 69000 Yes 4


%CountryFraud(USA);

Output:

Fraud Summary for USA

Fraudster_Name Fraud_Type Amount_Lost_USD Caught Penalty_Years
John_Doe Identity_Theft 125000 Yes 5


 Automate fraud type statistics:

 %macro FraudTypeStats(type);

    title "Statistics for &type. Fraud Type";

    proc sql;

        select count(*) as Total_Cases, avg(Amount_Lost_USD) as Avg_Loss

        from Bank_Fraudsters

        where Fraud_Type = "&type.";

    quit;

%mend;


%FraudTypeStats(Phishing);

Output:

Statistics for Phishing Fraud Type

Total_Cases Avg_Loss
2 65500


%FraudTypeStats(Money_Laundering);

Output:

Statistics for Money_Laundering Fraud Type

Total_Cases Avg_Loss
2 450000


STEP 7: CONDITIONAL DERIVED COLUMN

data Bank_Fraudsters_Categorized;

    set Bank_Fraudsters;

    length Risk_Level $10;

    if Amount_Lost_USD >= 200000 then Risk_Level = 'High';

    else if Amount_Lost_USD >= 75000 then Risk_Level = 'Medium';

    else Risk_Level = 'Low';

run;

proc print;run;

Output:

Obs Fraud_ID Fraudster_Name Country Fraud_Type Amount_Lost_USD Year Method Caught Penalty_Years Risk_Level
1 1 John_Doe USA Identity_Theft 125000 2019 Online_Yield Yes 5 Medium
2 2 Raj_Patel India Card_Cloning 84000 2020 ATM_Hack No . Medium
3 3 Mei_Wang China Money_Laundering 430000 2021 Shell_Companies Yes 10 High
4 4 Carlos_Soto Mexico Loan_Scam 59000 2018 Fake_Records Yes 3 Low
5 5 Fatima_Ali UAE Phishing 72000 2022 Email_Spoofing No . Low
6 6 Ivan_Kuznetsov Russia Crypto_Scam 205000 2021 Blockchain_Fraud No . High
7 7 Jean_Martin France Investment_Fraud 110000 2020 Ponzi_Scheme Yes 6 Medium
8 8 Linda_Kim South_Korea Skimming 63000 2019 ATM_Device Yes 4 Low
9 9 George_Smith UK Account_Takeover 95000 2022 SIM_Swap No . Medium
10 10 Akira_Tanaka Japan Check_Fraud 27000 2018 Forged_Cheques Yes 2 Low
11 11 Ahmed_Khan Pakistan Online_Scam 34000 2021 Fake_Websites No . Low
12 12 Maria_Rojas Brazil Money_Laundering 470000 2020 Shell_Companies Yes 8 High
13 13 Bongani_Ndlovu South_Africa Phishing 59000 2019 Email_Spoofing Yes 3 Low
14 14 Emily_Wilson Canada Identity_Theft 88000 2022 Fake_Documents No . Medium
15 15 Elena_Popov Ukraine Card_Cloning 77000 2021 ATM_Hack Yes 5 Medium
16 16 Andrew_Blake Australia Loan_Scam 66000 2020 Fake_Credit No . Low
17 17 Hassan_Musa Nigeria Investment_Fraud 92000 2021 Ponzi_Scheme No . Medium
18 18 Ingrid_Andersson Sweden Online_Scam 58000 2019 Fake_Ecommerce Yes 2 Low
19 19 Gopal_Sharma India SIM_Swap 69000 2022 Mobile_Fraud Yes 4 Low
20 20 Tommy_Nguyen Vietnam Crypto_Scam 230000 2021 Rug_Pull No . High


proc freq data=Bank_Fraudsters_Categorized;

    tables Risk_Level;

    title "Fraud Risk Level Categorization";

run;

Output:

Fraud Risk Level Categorization

The FREQ Procedure

Risk_Level Frequency Percent Cumulative
Frequency
Cumulative
Percent
High 4 20.00 4 20.00
Low 9 45.00 13 65.00
Medium 7 35.00 20 100.00

STEP 8: VISUALIZATION 

proc sgplot data=Bank_Fraudsters;

    vbar Fraud_Type / response=Amount_Lost_USD stat=sum;

    title "Total Loss by Fraud Type";

run;

Log:
NOTE: PROCEDURE SGPLOT used (Total process time):
      real time           3.23 seconds
      cpu time            0.57 seconds

NOTE: Listing image output written to SGPlot1.png.
NOTE: There were 20 observations read from the data set WORK.BANK_FRAUDSTERS.


To Visit My Previous E-Commerce Dataset:Click Here
To Visit My Previous Length,Input,Retain Statements:Click Here
To Visit My Previous Urban Traffic Dataset:Click Here
To Visit My Previous Home Energy Consumption Dataset:Click Here





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

PLEASE FOLLOW OUR TELEGRAM CHANNEL CLICK HERE

PLEASE FOLLOW OUR FACEBOOK PAGE  CLICK HERE

PLEASE FOLLOW OUR INSTAGRAM PAGE CLICK HERE






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