diff --git "a/Fraud_Detection.ipynb" "b/Fraud_Detection.ipynb"
new file mode 100644--- /dev/null
+++ "b/Fraud_Detection.ipynb"
@@ -0,0 +1,2434 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "nh8RwuXJMg6p"
+ },
+ "source": [
+ "Dependencies Import\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {
+ "id": "9u2Mg5v9MxcD"
+ },
+ "outputs": [],
+ "source": [
+ "# this code will import all the libraries that we need for this model.\n",
+ "import numpy as np\n",
+ "import pandas as pd\n",
+ "from matplotlib import pyplot as plt\n",
+ "from sklearn.model_selection import train_test_split\n",
+ "from sklearn.linear_model import LogisticRegression\n",
+ "from sklearn.metrics import accuracy_score"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {
+ "id": "O_fDIYrVmjcO"
+ },
+ "outputs": [],
+ "source": [
+ "# read the dataset that is holding the information for the credit card\n",
+ "# transactions.\n",
+ "credit_card_data = pd.read_csv('creditcard.csv')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 256
+ },
+ "id": "4Rytoup0m7Gd",
+ "outputId": "a7b44d70-6afa-4048-f14f-998ad8417b1c"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Time \n",
+ " V1 \n",
+ " V2 \n",
+ " V3 \n",
+ " V4 \n",
+ " V5 \n",
+ " V6 \n",
+ " V7 \n",
+ " V8 \n",
+ " V9 \n",
+ " ... \n",
+ " V21 \n",
+ " V22 \n",
+ " V23 \n",
+ " V24 \n",
+ " V25 \n",
+ " V26 \n",
+ " V27 \n",
+ " V28 \n",
+ " Amount \n",
+ " Class \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 0.0 \n",
+ " -1.359807 \n",
+ " -0.072781 \n",
+ " 2.536347 \n",
+ " 1.378155 \n",
+ " -0.338321 \n",
+ " 0.462388 \n",
+ " 0.239599 \n",
+ " 0.098698 \n",
+ " 0.363787 \n",
+ " ... \n",
+ " -0.018307 \n",
+ " 0.277838 \n",
+ " -0.110474 \n",
+ " 0.066928 \n",
+ " 0.128539 \n",
+ " -0.189115 \n",
+ " 0.133558 \n",
+ " -0.021053 \n",
+ " 149.62 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 0.0 \n",
+ " 1.191857 \n",
+ " 0.266151 \n",
+ " 0.166480 \n",
+ " 0.448154 \n",
+ " 0.060018 \n",
+ " -0.082361 \n",
+ " -0.078803 \n",
+ " 0.085102 \n",
+ " -0.255425 \n",
+ " ... \n",
+ " -0.225775 \n",
+ " -0.638672 \n",
+ " 0.101288 \n",
+ " -0.339846 \n",
+ " 0.167170 \n",
+ " 0.125895 \n",
+ " -0.008983 \n",
+ " 0.014724 \n",
+ " 2.69 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 1.0 \n",
+ " -1.358354 \n",
+ " -1.340163 \n",
+ " 1.773209 \n",
+ " 0.379780 \n",
+ " -0.503198 \n",
+ " 1.800499 \n",
+ " 0.791461 \n",
+ " 0.247676 \n",
+ " -1.514654 \n",
+ " ... \n",
+ " 0.247998 \n",
+ " 0.771679 \n",
+ " 0.909412 \n",
+ " -0.689281 \n",
+ " -0.327642 \n",
+ " -0.139097 \n",
+ " -0.055353 \n",
+ " -0.059752 \n",
+ " 378.66 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 1.0 \n",
+ " -0.966272 \n",
+ " -0.185226 \n",
+ " 1.792993 \n",
+ " -0.863291 \n",
+ " -0.010309 \n",
+ " 1.247203 \n",
+ " 0.237609 \n",
+ " 0.377436 \n",
+ " -1.387024 \n",
+ " ... \n",
+ " -0.108300 \n",
+ " 0.005274 \n",
+ " -0.190321 \n",
+ " -1.175575 \n",
+ " 0.647376 \n",
+ " -0.221929 \n",
+ " 0.062723 \n",
+ " 0.061458 \n",
+ " 123.50 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 2.0 \n",
+ " -1.158233 \n",
+ " 0.877737 \n",
+ " 1.548718 \n",
+ " 0.403034 \n",
+ " -0.407193 \n",
+ " 0.095921 \n",
+ " 0.592941 \n",
+ " -0.270533 \n",
+ " 0.817739 \n",
+ " ... \n",
+ " -0.009431 \n",
+ " 0.798278 \n",
+ " -0.137458 \n",
+ " 0.141267 \n",
+ " -0.206010 \n",
+ " 0.502292 \n",
+ " 0.219422 \n",
+ " 0.215153 \n",
+ " 69.99 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
5 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Time V1 V2 V3 V4 V5 V6 V7 \\\n",
+ "0 0.0 -1.359807 -0.072781 2.536347 1.378155 -0.338321 0.462388 0.239599 \n",
+ "1 0.0 1.191857 0.266151 0.166480 0.448154 0.060018 -0.082361 -0.078803 \n",
+ "2 1.0 -1.358354 -1.340163 1.773209 0.379780 -0.503198 1.800499 0.791461 \n",
+ "3 1.0 -0.966272 -0.185226 1.792993 -0.863291 -0.010309 1.247203 0.237609 \n",
+ "4 2.0 -1.158233 0.877737 1.548718 0.403034 -0.407193 0.095921 0.592941 \n",
+ "\n",
+ " V8 V9 ... V21 V22 V23 V24 V25 \\\n",
+ "0 0.098698 0.363787 ... -0.018307 0.277838 -0.110474 0.066928 0.128539 \n",
+ "1 0.085102 -0.255425 ... -0.225775 -0.638672 0.101288 -0.339846 0.167170 \n",
+ "2 0.247676 -1.514654 ... 0.247998 0.771679 0.909412 -0.689281 -0.327642 \n",
+ "3 0.377436 -1.387024 ... -0.108300 0.005274 -0.190321 -1.175575 0.647376 \n",
+ "4 -0.270533 0.817739 ... -0.009431 0.798278 -0.137458 0.141267 -0.206010 \n",
+ "\n",
+ " V26 V27 V28 Amount Class \n",
+ "0 -0.189115 0.133558 -0.021053 149.62 0 \n",
+ "1 0.125895 -0.008983 0.014724 2.69 0 \n",
+ "2 -0.139097 -0.055353 -0.059752 378.66 0 \n",
+ "3 -0.221929 0.062723 0.061458 123.50 0 \n",
+ "4 0.502292 0.219422 0.215153 69.99 0 \n",
+ "\n",
+ "[5 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# this will display the first 5 rows of the dataset.\n",
+ "credit_card_data.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 10,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 256
+ },
+ "id": "IJ_IsflInDQc",
+ "outputId": "8990db4d-0d1f-48d3-d3ea-918951f8160d"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Time \n",
+ " V1 \n",
+ " V2 \n",
+ " V3 \n",
+ " V4 \n",
+ " V5 \n",
+ " V6 \n",
+ " V7 \n",
+ " V8 \n",
+ " V9 \n",
+ " ... \n",
+ " V21 \n",
+ " V22 \n",
+ " V23 \n",
+ " V24 \n",
+ " V25 \n",
+ " V26 \n",
+ " V27 \n",
+ " V28 \n",
+ " Amount \n",
+ " Class \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 284802 \n",
+ " 172786.0 \n",
+ " -11.881118 \n",
+ " 10.071785 \n",
+ " -9.834783 \n",
+ " -2.066656 \n",
+ " -5.364473 \n",
+ " -2.606837 \n",
+ " -4.918215 \n",
+ " 7.305334 \n",
+ " 1.914428 \n",
+ " ... \n",
+ " 0.213454 \n",
+ " 0.111864 \n",
+ " 1.014480 \n",
+ " -0.509348 \n",
+ " 1.436807 \n",
+ " 0.250034 \n",
+ " 0.943651 \n",
+ " 0.823731 \n",
+ " 0.77 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 284803 \n",
+ " 172787.0 \n",
+ " -0.732789 \n",
+ " -0.055080 \n",
+ " 2.035030 \n",
+ " -0.738589 \n",
+ " 0.868229 \n",
+ " 1.058415 \n",
+ " 0.024330 \n",
+ " 0.294869 \n",
+ " 0.584800 \n",
+ " ... \n",
+ " 0.214205 \n",
+ " 0.924384 \n",
+ " 0.012463 \n",
+ " -1.016226 \n",
+ " -0.606624 \n",
+ " -0.395255 \n",
+ " 0.068472 \n",
+ " -0.053527 \n",
+ " 24.79 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 284804 \n",
+ " 172788.0 \n",
+ " 1.919565 \n",
+ " -0.301254 \n",
+ " -3.249640 \n",
+ " -0.557828 \n",
+ " 2.630515 \n",
+ " 3.031260 \n",
+ " -0.296827 \n",
+ " 0.708417 \n",
+ " 0.432454 \n",
+ " ... \n",
+ " 0.232045 \n",
+ " 0.578229 \n",
+ " -0.037501 \n",
+ " 0.640134 \n",
+ " 0.265745 \n",
+ " -0.087371 \n",
+ " 0.004455 \n",
+ " -0.026561 \n",
+ " 67.88 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 284805 \n",
+ " 172788.0 \n",
+ " -0.240440 \n",
+ " 0.530483 \n",
+ " 0.702510 \n",
+ " 0.689799 \n",
+ " -0.377961 \n",
+ " 0.623708 \n",
+ " -0.686180 \n",
+ " 0.679145 \n",
+ " 0.392087 \n",
+ " ... \n",
+ " 0.265245 \n",
+ " 0.800049 \n",
+ " -0.163298 \n",
+ " 0.123205 \n",
+ " -0.569159 \n",
+ " 0.546668 \n",
+ " 0.108821 \n",
+ " 0.104533 \n",
+ " 10.00 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 284806 \n",
+ " 172792.0 \n",
+ " -0.533413 \n",
+ " -0.189733 \n",
+ " 0.703337 \n",
+ " -0.506271 \n",
+ " -0.012546 \n",
+ " -0.649617 \n",
+ " 1.577006 \n",
+ " -0.414650 \n",
+ " 0.486180 \n",
+ " ... \n",
+ " 0.261057 \n",
+ " 0.643078 \n",
+ " 0.376777 \n",
+ " 0.008797 \n",
+ " -0.473649 \n",
+ " -0.818267 \n",
+ " -0.002415 \n",
+ " 0.013649 \n",
+ " 217.00 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
5 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Time V1 V2 V3 V4 V5 \\\n",
+ "284802 172786.0 -11.881118 10.071785 -9.834783 -2.066656 -5.364473 \n",
+ "284803 172787.0 -0.732789 -0.055080 2.035030 -0.738589 0.868229 \n",
+ "284804 172788.0 1.919565 -0.301254 -3.249640 -0.557828 2.630515 \n",
+ "284805 172788.0 -0.240440 0.530483 0.702510 0.689799 -0.377961 \n",
+ "284806 172792.0 -0.533413 -0.189733 0.703337 -0.506271 -0.012546 \n",
+ "\n",
+ " V6 V7 V8 V9 ... V21 V22 \\\n",
+ "284802 -2.606837 -4.918215 7.305334 1.914428 ... 0.213454 0.111864 \n",
+ "284803 1.058415 0.024330 0.294869 0.584800 ... 0.214205 0.924384 \n",
+ "284804 3.031260 -0.296827 0.708417 0.432454 ... 0.232045 0.578229 \n",
+ "284805 0.623708 -0.686180 0.679145 0.392087 ... 0.265245 0.800049 \n",
+ "284806 -0.649617 1.577006 -0.414650 0.486180 ... 0.261057 0.643078 \n",
+ "\n",
+ " V23 V24 V25 V26 V27 V28 Amount \\\n",
+ "284802 1.014480 -0.509348 1.436807 0.250034 0.943651 0.823731 0.77 \n",
+ "284803 0.012463 -1.016226 -0.606624 -0.395255 0.068472 -0.053527 24.79 \n",
+ "284804 -0.037501 0.640134 0.265745 -0.087371 0.004455 -0.026561 67.88 \n",
+ "284805 -0.163298 0.123205 -0.569159 0.546668 0.108821 0.104533 10.00 \n",
+ "284806 0.376777 0.008797 -0.473649 -0.818267 -0.002415 0.013649 217.00 \n",
+ "\n",
+ " Class \n",
+ "284802 0 \n",
+ "284803 0 \n",
+ "284804 0 \n",
+ "284805 0 \n",
+ "284806 0 \n",
+ "\n",
+ "[5 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# this will display the last 5 rows of the dataset.\n",
+ "credit_card_data.tail()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "m0SvHGpcpjs1",
+ "outputId": "064c8080-e564-4c88-8514-04fd41deb663"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "RangeIndex: 284807 entries, 0 to 284806\n",
+ "Data columns (total 31 columns):\n",
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 Time 284807 non-null float64\n",
+ " 1 V1 284807 non-null float64\n",
+ " 2 V2 284807 non-null float64\n",
+ " 3 V3 284807 non-null float64\n",
+ " 4 V4 284807 non-null float64\n",
+ " 5 V5 284807 non-null float64\n",
+ " 6 V6 284807 non-null float64\n",
+ " 7 V7 284807 non-null float64\n",
+ " 8 V8 284807 non-null float64\n",
+ " 9 V9 284807 non-null float64\n",
+ " 10 V10 284807 non-null float64\n",
+ " 11 V11 284807 non-null float64\n",
+ " 12 V12 284807 non-null float64\n",
+ " 13 V13 284807 non-null float64\n",
+ " 14 V14 284807 non-null float64\n",
+ " 15 V15 284807 non-null float64\n",
+ " 16 V16 284807 non-null float64\n",
+ " 17 V17 284807 non-null float64\n",
+ " 18 V18 284807 non-null float64\n",
+ " 19 V19 284807 non-null float64\n",
+ " 20 V20 284807 non-null float64\n",
+ " 21 V21 284807 non-null float64\n",
+ " 22 V22 284807 non-null float64\n",
+ " 23 V23 284807 non-null float64\n",
+ " 24 V24 284807 non-null float64\n",
+ " 25 V25 284807 non-null float64\n",
+ " 26 V26 284807 non-null float64\n",
+ " 27 V27 284807 non-null float64\n",
+ " 28 V28 284807 non-null float64\n",
+ " 29 Amount 284807 non-null float64\n",
+ " 30 Class 284807 non-null int64 \n",
+ "dtypes: float64(30), int64(1)\n",
+ "memory usage: 67.4 MB\n"
+ ]
+ }
+ ],
+ "source": [
+ "# information about the dataset showcasing the datatypes used and whether the\n",
+ "#dataset contains null values or not.\n",
+ "credit_card_data.info()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "NU32ZenZqCH6",
+ "outputId": "e22998c6-591a-427d-8026-a7e6a5fedc2e"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Time 0\n",
+ "V1 0\n",
+ "V2 0\n",
+ "V3 0\n",
+ "V4 0\n",
+ "V5 0\n",
+ "V6 0\n",
+ "V7 0\n",
+ "V8 0\n",
+ "V9 0\n",
+ "V10 0\n",
+ "V11 0\n",
+ "V12 0\n",
+ "V13 0\n",
+ "V14 0\n",
+ "V15 0\n",
+ "V16 0\n",
+ "V17 0\n",
+ "V18 0\n",
+ "V19 0\n",
+ "V20 0\n",
+ "V21 0\n",
+ "V22 0\n",
+ "V23 0\n",
+ "V24 0\n",
+ "V25 0\n",
+ "V26 0\n",
+ "V27 0\n",
+ "V28 0\n",
+ "Amount 0\n",
+ "Class 0\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# check for the number of missing values on each column.\n",
+ "credit_card_data.isnull().sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "Ui6hiIkMqQNs",
+ "outputId": "143e95a6-2065-4bc1-cb04-98c79caac2ab"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Class\n",
+ "0 284315\n",
+ "1 492\n",
+ "Name: count, dtype: int64"
+ ]
+ },
+ "execution_count": 13,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# check the distribution between acceptable transaction and fraudulent transaction.\n",
+ "credit_card_data['Class'].value_counts()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "WJo6c7ESs1JV"
+ },
+ "source": [
+ "Looking at the above values it shows that the dataset is very unstable and inbalanced."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "-R19R7eeq202"
+ },
+ "source": [
+ "0---> would represent acceptable transaction\n",
+ "\n",
+ "1---> would the represent fradulent transaction."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "metadata": {
+ "id": "XqcM9-T8rs2b"
+ },
+ "outputs": [],
+ "source": [
+ "# data seperation for analysis.\n",
+ "acceptable = credit_card_data[credit_card_data.Class == 0]\n",
+ "fraudulent = credit_card_data[credit_card_data.Class == 1]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "hbW83hntr51b",
+ "outputId": "0b363260-b65b-449c-fc9f-bbdda054bb11"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "(284315, 31)\n",
+ "(492, 31)\n"
+ ]
+ }
+ ],
+ "source": [
+ "print(acceptable.shape)\n",
+ "print(fraudulent.shape)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 16,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "0mZn4ZWstJKy",
+ "outputId": "aa58edd1-a752-4235-8b96-9902ad98b3b3"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "count 284315.000000\n",
+ "mean 88.291022\n",
+ "std 250.105092\n",
+ "min 0.000000\n",
+ "25% 5.650000\n",
+ "50% 22.000000\n",
+ "75% 77.050000\n",
+ "max 25691.160000\n",
+ "Name: Amount, dtype: float64"
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# statistical measures.\n",
+ "acceptable.Amount.describe()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "3KsBbYA-tZ4k",
+ "outputId": "e9f7d531-5e55-4eb0-8c17-51b2288f75f4"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "count 492.000000\n",
+ "mean 122.211321\n",
+ "std 256.683288\n",
+ "min 0.000000\n",
+ "25% 1.000000\n",
+ "50% 9.250000\n",
+ "75% 105.890000\n",
+ "max 2125.870000\n",
+ "Name: Amount, dtype: float64"
+ ]
+ },
+ "execution_count": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "fraudulent.Amount.describe()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 193
+ },
+ "id": "FQj8FwYXt4v5",
+ "outputId": "8a887195-36c3-49a4-cf36-e1e65ec4190c"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Time \n",
+ " V1 \n",
+ " V2 \n",
+ " V3 \n",
+ " V4 \n",
+ " V5 \n",
+ " V6 \n",
+ " V7 \n",
+ " V8 \n",
+ " V9 \n",
+ " ... \n",
+ " V20 \n",
+ " V21 \n",
+ " V22 \n",
+ " V23 \n",
+ " V24 \n",
+ " V25 \n",
+ " V26 \n",
+ " V27 \n",
+ " V28 \n",
+ " Amount \n",
+ " \n",
+ " \n",
+ " Class \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 94838.202258 \n",
+ " 0.008258 \n",
+ " -0.006271 \n",
+ " 0.012171 \n",
+ " -0.007860 \n",
+ " 0.005453 \n",
+ " 0.002419 \n",
+ " 0.009637 \n",
+ " -0.000987 \n",
+ " 0.004467 \n",
+ " ... \n",
+ " -0.000644 \n",
+ " -0.001235 \n",
+ " -0.000024 \n",
+ " 0.000070 \n",
+ " 0.000182 \n",
+ " -0.000072 \n",
+ " -0.000089 \n",
+ " -0.000295 \n",
+ " -0.000131 \n",
+ " 88.291022 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 80746.806911 \n",
+ " -4.771948 \n",
+ " 3.623778 \n",
+ " -7.033281 \n",
+ " 4.542029 \n",
+ " -3.151225 \n",
+ " -1.397737 \n",
+ " -5.568731 \n",
+ " 0.570636 \n",
+ " -2.581123 \n",
+ " ... \n",
+ " 0.372319 \n",
+ " 0.713588 \n",
+ " 0.014049 \n",
+ " -0.040308 \n",
+ " -0.105130 \n",
+ " 0.041449 \n",
+ " 0.051648 \n",
+ " 0.170575 \n",
+ " 0.075667 \n",
+ " 122.211321 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
2 rows × 30 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Time V1 V2 V3 V4 V5 \\\n",
+ "Class \n",
+ "0 94838.202258 0.008258 -0.006271 0.012171 -0.007860 0.005453 \n",
+ "1 80746.806911 -4.771948 3.623778 -7.033281 4.542029 -3.151225 \n",
+ "\n",
+ " V6 V7 V8 V9 ... V20 V21 \\\n",
+ "Class ... \n",
+ "0 0.002419 0.009637 -0.000987 0.004467 ... -0.000644 -0.001235 \n",
+ "1 -1.397737 -5.568731 0.570636 -2.581123 ... 0.372319 0.713588 \n",
+ "\n",
+ " V22 V23 V24 V25 V26 V27 V28 \\\n",
+ "Class \n",
+ "0 -0.000024 0.000070 0.000182 -0.000072 -0.000089 -0.000295 -0.000131 \n",
+ "1 0.014049 -0.040308 -0.105130 0.041449 0.051648 0.170575 0.075667 \n",
+ "\n",
+ " Amount \n",
+ "Class \n",
+ "0 88.291022 \n",
+ "1 122.211321 \n",
+ "\n",
+ "[2 rows x 30 columns]"
+ ]
+ },
+ "execution_count": 18,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# value comparison of both transactions.\n",
+ "credit_card_data.groupby('Class').mean()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "jqC4ru07uV7e"
+ },
+ "source": [
+ "Data Sampling"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "rwFSIIBUugNW",
+ "outputId": "7d1990bf-c955-4a08-e708-390d0ba5b394"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "99.82725143693798\n",
+ "0.1727485630620034\n"
+ ]
+ }
+ ],
+ "source": [
+ "# before sampling the dataset...\n",
+ "# calculate the percentage of both the acceptable and fraudulent transactions of\n",
+ "# the dataset.\n",
+ "classes=credit_card_data['Class'].value_counts()\n",
+ "acceptable_percent=classes[0]/credit_card_data['Class'].count()*100\n",
+ "fraudulent_percent=classes[1]/credit_card_data['Class'].count()*100\n",
+ "print(acceptable_percent)\n",
+ "print(fraudulent_percent)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 472
+ },
+ "id": "-LtU3QNczM0H",
+ "outputId": "c5555535-2d60-4523-ac45-a0650f554cc7"
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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xD333OOcPXu20+l0OktKSpz+/v7OdevWOZ1OpzMmJsY5YMCACvfbt2+fU5JzzZo1FY7/8Y9/dPbs2dNl25EjR5ySnPv27XM6nU7nAw884GzXrp2zrKzMqhk7dqyzXbt21nqzZs2cs2bNuuxxxMXFOZ9//nlrvbJzf/75505vb2/nuXPnXOa9/fbbnW+88cZlHx+oqQYNGuR0d3d3NmjQwFoef/xx5wMPPOC8++67L7v/smXLnI0bN7bWJ0+e7Gzfvr1LzaxZs5zNmjWz1oODg50zZsyw1ktKSpxNmzZ1Pvroo9a2in6227dv75w8ebK1Lsm5fPlyp9PpdL777rvONm3auPxMFxUVOevVq+dcvXq1dazNmjVznj9/3qr59a9/7ezbt+8vPi6qF2eqcEPYt2+ftmzZov79+0uS6tSpo759+1pv4WVlZalHjx4V7puVlSV3d3c98MADFY7v2LFD69atU8OGDa2lbdu2kqSDBw9adV26dHE5BR8TE6P9+/ertLT0kn2Xlpbqj3/8oyIiIuTn56eGDRtq9erVysnJcamrzNw7duzQmTNn1LhxY5eeDx065NIvUBt1795dWVlZ1jJ37lxJUlRUVLnazz77TD169NCtt96qRo0aaeDAgTp16pR++OGHK3qswsJCHT9+XNHR0da2OnXqqGPHjld1DDt27NCBAwfUqFEj6+fTz89P586dc/kZveOOO+Tu7m6tBwcH68SJE1f12Li2+O4/3BDefvttnT9/XiEhIdY2p9MpT09PzZs3T/Xq1bvkvr80Jv10rdYjjzyiP//5z+XGgoODq960pFdffVVz5szR7NmzrWs/Ro0adVUX2p45c0bBwcFav359uTFfX9+qNwvUAA0aNFDLli0r3H6xw4cP6+GHH9aIESP0pz/9SX5+fvriiy80dOhQFRcXq379+nJzcyt3fdSFa5Yqo7LznDlzRlFRUXrvvffKjTVp0sT6d926dV3GbDabysrKKt0frh9CFWq98+fP629/+5tmzpypnj17uozFx8fr/fff11133aX09HQNGTKk3P4REREqKyvThg0bFBsbW268Q4cO+uc//6mwsDDVqXPpH5nNmze7rH/11Vdq1aqV9Zemh4dHuTNLX375pR599FH97ne/kySVlZXpP//5j8LDwys198/7zc3NVZ06dVwuuAVuJpmZmSorK9PMmTPl5vbTmzJLly51qWnSpIlyc3PldDqtM8FZWVnWuI+Pj4KDg7V582bdf//9kn56vblwneLF81x8TZPD4dChQ4cu2VuHDh20ZMkSBQQEyNvbu8rHWNFrCqoXb/+h1lu5cqW+//57DR06VHfeeafLkpCQoLfffluTJ0/W+++/r8mTJ2vv3r3atWuXdeYpLCxMgwYN0pNPPqkVK1bo0KFDWr9+vfUCnJiYqPz8fPXv319bt27VwYMHtXr1ag0ZMsTlBS0nJ0fJycnat2+f3n//fb3++ut67rnnrPGwsDBt3LhR3377rfXJwVatWmnNmjXatGmT9u7dq9///vfKy8srd4yXm/tisbGxiomJUXx8vP7973/r8OHD2rRpk1566SVt27bN2PMO1GQtW7ZUSUmJXn/9df33v//Vu+++a13AfkG3bt108uRJzZgxQwcPHlRKSoo+/fRTl5rnnntOr7zyilasWKHs7Gw988wzKigocKl58MEH9e677+rzzz/Xrl27NGjQoAr/4LlgwIAB8vf316OPPqrPP//ces159tlndfTo0Ss+xopeU1C9CFWo9d5++23FxsbKx8en3FhCQoK2bdsmPz8/LVu2TB999JEiIyP14IMPunzCbsGCBXr88cf1zDPPqG3btho+fLjOnj0rSQoJCdGXX36p0tJS9ezZUxERERo1apR8fX2tv4Clnz5B+OOPP6pz585KTEzUc889p6eeesoanzZtmg4fPqzbb7/dOsU/YcIEdejQQXa7Xd26dVNQUFCFd2q+3NwXs9ls+uSTT3T//fdryJAhat26tfr166dvvvlGgYGBVXqOgdqmffv2eu211/TnP/9Zd955p9577z1Nnz7dpaZdu3aaP3++UlJS1L59e23ZskUvvPCCS83zzz+vgQMHatCgQYqJiVGjRo1cbsciSePHj9cDDzyghx9+WHFxcYqPj9ftt99+yd7q16+vjRs36rbbblOfPn3Url07DR06VOfOnavUmauKXlNQvWzOn78RDKDSunXrpsjISO5uDAA3Mc5UAQAAGECoAgAAMIC3/wAAAAzgTBUAAIABhCoAAAADCFUAAAAGEKoAAAAMIFQBwBWy2WxasWJFdbcBoIYiVAHA/5Obm6uRI0eqRYsW8vT0VGhoqB555BGlp6dXd2sAagG+UBkAJB0+fFhdu3aVr6+vXn31VUVERKikpESrV69WYmKisrOzq7tFADUcZ6oAQNIzzzwjm82mLVu2KCEhQa1bt9Ydd9yh5ORkffXVVxXuM3bsWLVu3Vr169dXixYtNHHiRJWUlFjjO3bsUPfu3dWoUSN5e3srKirK+lLrb775Ro888ohuueUWNWjQQHfccYc++eST63KsAK4NzlQBuOnl5+crLS1Nf/rTn9SgQYNy476+vhXu16hRI6WmpiokJES7du3S8OHD1ahRI40ZM0aSNGDAAN19991asGCB3N3dlZWVpbp160qSEhMTVVxcrI0bN6pBgwb6P//n/6hhw4bX7BgBXHuEKgA3vQMHDsjpdKpt27aV2m/ChAnWv8PCwvTCCy/ogw8+sEJVTk6OXnzxRWveVq1aWfU5OTlKSEhQRESEJKlFixZXexgAqhlv/wG46VX127qWLFmirl27KigoSA0bNtSECROUk5NjjScnJ2vYsGGKjY3VK6+8ooMHD1pjzz77rF5++WV17dpVkydP1s6dO6/6OABUL0IVgJteq1atZLPZKnUxekZGhgYMGKDevXtr5cqV+vrrr/XSSy+puLjYqpkyZYr27NmjuLg4rV27VuHh4Vq+fLkkadiwYfrvf/+rgQMHateuXerYsaNef/1148cG4PrhC5UBQNJDDz2kXbt2ad++feWuqyooKJCvr69sNpuWL1+u+Ph4zZw5U/Pnz3c5+zRs2DD94x//UEFBQYWP0b9/f509e1YfffRRubHx48dr1apVnLECajHOVAGApJSUFJWWlqpz58765z//qf3792vv3r2aO3euYmJiytW3atVKOTk5+uCDD3Tw4EHNnTvXOgslST/++KOSkpK0fv16ffPNN/ryyy+1detWtWvXTpI0atQorV69WocOHdL27du1bt06awxA7cSF6gCgny4U3759u/70pz/p+eef1/Hjx9WkSRNFRUVpwYIF5ep/9atfafTo0UpKSlJRUZHi4uI0ceJETZkyRZLk7u6uU6dO6YknnlBeXp78/f3Vp08fTZ06VZJUWlqqxMREHT16VN7e3urVq5dmzZp1PQ8ZgGG8/QcAAGAAb/8BAAAYQKgCAAAwgFAFAABgAKEKAADAAEIVAACAAYQqAAAAAwhVAAAABhCqAAAADCBUAQAAGECoAgAAMIBQBQAAYAChCgAAwID/C56MiMX76ejOAAAAAElFTkSuQmCC",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "labels = ['Acceptable','Fraudulent']\n",
+ "count = credit_card_data.value_counts(credit_card_data['Class'])\n",
+ "count.plot(kind = \"bar\",rot=0)\n",
+ "plt.title(\"Labels\")\n",
+ "plt.ylabel(\"Count\")\n",
+ "plt.xticks(range(2), labels)\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "d-hJnOqkugu8"
+ },
+ "source": [
+ "create a sample dataset that contains a normal distribution of both transactions."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "metadata": {
+ "id": "Tqwwev53w6VK"
+ },
+ "outputs": [],
+ "source": [
+ "acceptable_sample=acceptable.sample(n=492)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "kLZdgOrcxMWm"
+ },
+ "source": [
+ "Concatinate the sample dataset into the already existing fraudulent dataframe"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "metadata": {
+ "id": "w2xOTMlcw_G2"
+ },
+ "outputs": [],
+ "source": [
+ "# axis = 0 (rows)\n",
+ "# axis = 1 (columns)\n",
+ "new_dataset=pd.concat([acceptable_sample,fraudulent],axis=0)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 256
+ },
+ "id": "23TLgKczx0gQ",
+ "outputId": "9443a2c0-db45-4f46-9811-68ebaaf8ab2b"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Time \n",
+ " V1 \n",
+ " V2 \n",
+ " V3 \n",
+ " V4 \n",
+ " V5 \n",
+ " V6 \n",
+ " V7 \n",
+ " V8 \n",
+ " V9 \n",
+ " ... \n",
+ " V21 \n",
+ " V22 \n",
+ " V23 \n",
+ " V24 \n",
+ " V25 \n",
+ " V26 \n",
+ " V27 \n",
+ " V28 \n",
+ " Amount \n",
+ " Class \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 127383 \n",
+ " 78312.0 \n",
+ " -1.033684 \n",
+ " 1.317406 \n",
+ " 1.240114 \n",
+ " 0.697731 \n",
+ " -0.237730 \n",
+ " -0.626897 \n",
+ " 0.088513 \n",
+ " 0.433316 \n",
+ " -0.773460 \n",
+ " ... \n",
+ " -0.186250 \n",
+ " -0.581192 \n",
+ " -0.059505 \n",
+ " 0.379718 \n",
+ " 0.025610 \n",
+ " 0.292520 \n",
+ " 0.014281 \n",
+ " -0.057068 \n",
+ " 2.69 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 102015 \n",
+ " 68022.0 \n",
+ " 1.230948 \n",
+ " 0.069872 \n",
+ " 0.484287 \n",
+ " 1.382559 \n",
+ " -0.395183 \n",
+ " -0.196777 \n",
+ " -0.181241 \n",
+ " 0.027517 \n",
+ " 0.737572 \n",
+ " ... \n",
+ " -0.128193 \n",
+ " -0.160311 \n",
+ " -0.147329 \n",
+ " -0.127866 \n",
+ " 0.734199 \n",
+ " -0.263437 \n",
+ " 0.033276 \n",
+ " 0.015172 \n",
+ " 3.29 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 89239 \n",
+ " 62487.0 \n",
+ " 0.986023 \n",
+ " -0.541423 \n",
+ " 1.553750 \n",
+ " 0.737388 \n",
+ " -1.313536 \n",
+ " 0.481834 \n",
+ " -1.099914 \n",
+ " 0.451702 \n",
+ " 0.890411 \n",
+ " ... \n",
+ " 0.291272 \n",
+ " 0.874943 \n",
+ " -0.043822 \n",
+ " 0.265505 \n",
+ " 0.091530 \n",
+ " 0.504073 \n",
+ " 0.032954 \n",
+ " 0.026374 \n",
+ " 51.20 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 131185 \n",
+ " 79516.0 \n",
+ " -1.201172 \n",
+ " -0.548377 \n",
+ " 2.631439 \n",
+ " 2.854492 \n",
+ " 0.579070 \n",
+ " 0.961969 \n",
+ " -0.091708 \n",
+ " 0.221970 \n",
+ " 0.172547 \n",
+ " ... \n",
+ " -0.171671 \n",
+ " -0.375741 \n",
+ " 0.168826 \n",
+ " -0.451343 \n",
+ " 0.028046 \n",
+ " 0.021925 \n",
+ " -0.066196 \n",
+ " -0.071260 \n",
+ " 124.09 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ " 236961 \n",
+ " 149039.0 \n",
+ " 1.725336 \n",
+ " 0.005862 \n",
+ " 0.499981 \n",
+ " 4.083052 \n",
+ " -0.498462 \n",
+ " 0.598846 \n",
+ " -0.568135 \n",
+ " 0.223276 \n",
+ " 0.078894 \n",
+ " ... \n",
+ " -0.206461 \n",
+ " -0.499058 \n",
+ " 0.354503 \n",
+ " -0.079029 \n",
+ " -0.510911 \n",
+ " -0.305583 \n",
+ " 0.024437 \n",
+ " -0.016899 \n",
+ " 56.78 \n",
+ " 0 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
5 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Time V1 V2 V3 V4 V5 V6 \\\n",
+ "127383 78312.0 -1.033684 1.317406 1.240114 0.697731 -0.237730 -0.626897 \n",
+ "102015 68022.0 1.230948 0.069872 0.484287 1.382559 -0.395183 -0.196777 \n",
+ "89239 62487.0 0.986023 -0.541423 1.553750 0.737388 -1.313536 0.481834 \n",
+ "131185 79516.0 -1.201172 -0.548377 2.631439 2.854492 0.579070 0.961969 \n",
+ "236961 149039.0 1.725336 0.005862 0.499981 4.083052 -0.498462 0.598846 \n",
+ "\n",
+ " V7 V8 V9 ... V21 V22 V23 \\\n",
+ "127383 0.088513 0.433316 -0.773460 ... -0.186250 -0.581192 -0.059505 \n",
+ "102015 -0.181241 0.027517 0.737572 ... -0.128193 -0.160311 -0.147329 \n",
+ "89239 -1.099914 0.451702 0.890411 ... 0.291272 0.874943 -0.043822 \n",
+ "131185 -0.091708 0.221970 0.172547 ... -0.171671 -0.375741 0.168826 \n",
+ "236961 -0.568135 0.223276 0.078894 ... -0.206461 -0.499058 0.354503 \n",
+ "\n",
+ " V24 V25 V26 V27 V28 Amount Class \n",
+ "127383 0.379718 0.025610 0.292520 0.014281 -0.057068 2.69 0 \n",
+ "102015 -0.127866 0.734199 -0.263437 0.033276 0.015172 3.29 0 \n",
+ "89239 0.265505 0.091530 0.504073 0.032954 0.026374 51.20 0 \n",
+ "131185 -0.451343 0.028046 0.021925 -0.066196 -0.071260 124.09 0 \n",
+ "236961 -0.079029 -0.510911 -0.305583 0.024437 -0.016899 56.78 0 \n",
+ "\n",
+ "[5 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 23,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# view the first 5 rows of the new dataset picked at random.\n",
+ "new_dataset.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 256
+ },
+ "id": "L7NHGvkay8DH",
+ "outputId": "bf1a4a78-44d0-42d0-e790-971e37421787"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Time \n",
+ " V1 \n",
+ " V2 \n",
+ " V3 \n",
+ " V4 \n",
+ " V5 \n",
+ " V6 \n",
+ " V7 \n",
+ " V8 \n",
+ " V9 \n",
+ " ... \n",
+ " V21 \n",
+ " V22 \n",
+ " V23 \n",
+ " V24 \n",
+ " V25 \n",
+ " V26 \n",
+ " V27 \n",
+ " V28 \n",
+ " Amount \n",
+ " Class \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 279863 \n",
+ " 169142.0 \n",
+ " -1.927883 \n",
+ " 1.125653 \n",
+ " -4.518331 \n",
+ " 1.749293 \n",
+ " -1.566487 \n",
+ " -2.010494 \n",
+ " -0.882850 \n",
+ " 0.697211 \n",
+ " -2.064945 \n",
+ " ... \n",
+ " 0.778584 \n",
+ " -0.319189 \n",
+ " 0.639419 \n",
+ " -0.294885 \n",
+ " 0.537503 \n",
+ " 0.788395 \n",
+ " 0.292680 \n",
+ " 0.147968 \n",
+ " 390.00 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 280143 \n",
+ " 169347.0 \n",
+ " 1.378559 \n",
+ " 1.289381 \n",
+ " -5.004247 \n",
+ " 1.411850 \n",
+ " 0.442581 \n",
+ " -1.326536 \n",
+ " -1.413170 \n",
+ " 0.248525 \n",
+ " -1.127396 \n",
+ " ... \n",
+ " 0.370612 \n",
+ " 0.028234 \n",
+ " -0.145640 \n",
+ " -0.081049 \n",
+ " 0.521875 \n",
+ " 0.739467 \n",
+ " 0.389152 \n",
+ " 0.186637 \n",
+ " 0.76 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 280149 \n",
+ " 169351.0 \n",
+ " -0.676143 \n",
+ " 1.126366 \n",
+ " -2.213700 \n",
+ " 0.468308 \n",
+ " -1.120541 \n",
+ " -0.003346 \n",
+ " -2.234739 \n",
+ " 1.210158 \n",
+ " -0.652250 \n",
+ " ... \n",
+ " 0.751826 \n",
+ " 0.834108 \n",
+ " 0.190944 \n",
+ " 0.032070 \n",
+ " -0.739695 \n",
+ " 0.471111 \n",
+ " 0.385107 \n",
+ " 0.194361 \n",
+ " 77.89 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 281144 \n",
+ " 169966.0 \n",
+ " -3.113832 \n",
+ " 0.585864 \n",
+ " -5.399730 \n",
+ " 1.817092 \n",
+ " -0.840618 \n",
+ " -2.943548 \n",
+ " -2.208002 \n",
+ " 1.058733 \n",
+ " -1.632333 \n",
+ " ... \n",
+ " 0.583276 \n",
+ " -0.269209 \n",
+ " -0.456108 \n",
+ " -0.183659 \n",
+ " -0.328168 \n",
+ " 0.606116 \n",
+ " 0.884876 \n",
+ " -0.253700 \n",
+ " 245.00 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ " 281674 \n",
+ " 170348.0 \n",
+ " 1.991976 \n",
+ " 0.158476 \n",
+ " -2.583441 \n",
+ " 0.408670 \n",
+ " 1.151147 \n",
+ " -0.096695 \n",
+ " 0.223050 \n",
+ " -0.068384 \n",
+ " 0.577829 \n",
+ " ... \n",
+ " -0.164350 \n",
+ " -0.295135 \n",
+ " -0.072173 \n",
+ " -0.450261 \n",
+ " 0.313267 \n",
+ " -0.289617 \n",
+ " 0.002988 \n",
+ " -0.015309 \n",
+ " 42.53 \n",
+ " 1 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
5 rows × 31 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Time V1 V2 V3 V4 V5 V6 \\\n",
+ "279863 169142.0 -1.927883 1.125653 -4.518331 1.749293 -1.566487 -2.010494 \n",
+ "280143 169347.0 1.378559 1.289381 -5.004247 1.411850 0.442581 -1.326536 \n",
+ "280149 169351.0 -0.676143 1.126366 -2.213700 0.468308 -1.120541 -0.003346 \n",
+ "281144 169966.0 -3.113832 0.585864 -5.399730 1.817092 -0.840618 -2.943548 \n",
+ "281674 170348.0 1.991976 0.158476 -2.583441 0.408670 1.151147 -0.096695 \n",
+ "\n",
+ " V7 V8 V9 ... V21 V22 V23 \\\n",
+ "279863 -0.882850 0.697211 -2.064945 ... 0.778584 -0.319189 0.639419 \n",
+ "280143 -1.413170 0.248525 -1.127396 ... 0.370612 0.028234 -0.145640 \n",
+ "280149 -2.234739 1.210158 -0.652250 ... 0.751826 0.834108 0.190944 \n",
+ "281144 -2.208002 1.058733 -1.632333 ... 0.583276 -0.269209 -0.456108 \n",
+ "281674 0.223050 -0.068384 0.577829 ... -0.164350 -0.295135 -0.072173 \n",
+ "\n",
+ " V24 V25 V26 V27 V28 Amount Class \n",
+ "279863 -0.294885 0.537503 0.788395 0.292680 0.147968 390.00 1 \n",
+ "280143 -0.081049 0.521875 0.739467 0.389152 0.186637 0.76 1 \n",
+ "280149 0.032070 -0.739695 0.471111 0.385107 0.194361 77.89 1 \n",
+ "281144 -0.183659 -0.328168 0.606116 0.884876 -0.253700 245.00 1 \n",
+ "281674 -0.450261 0.313267 -0.289617 0.002988 -0.015309 42.53 1 \n",
+ "\n",
+ "[5 rows x 31 columns]"
+ ]
+ },
+ "execution_count": 24,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "new_dataset.tail()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 25,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "sDt3k12o0pip",
+ "outputId": "693193e5-a80c-4b3a-d7a6-26aa8545fd32"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Class\n",
+ "0 492\n",
+ "1 492\n",
+ "Name: count, dtype: int64"
+ ]
+ },
+ "execution_count": 25,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "new_dataset['Class'].value_counts()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 26,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 193
+ },
+ "id": "yPZxI9bv3VhQ",
+ "outputId": "7c050329-f69c-4444-908b-6989712559a0"
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Time \n",
+ " V1 \n",
+ " V2 \n",
+ " V3 \n",
+ " V4 \n",
+ " V5 \n",
+ " V6 \n",
+ " V7 \n",
+ " V8 \n",
+ " V9 \n",
+ " ... \n",
+ " V20 \n",
+ " V21 \n",
+ " V22 \n",
+ " V23 \n",
+ " V24 \n",
+ " V25 \n",
+ " V26 \n",
+ " V27 \n",
+ " V28 \n",
+ " Amount \n",
+ " \n",
+ " \n",
+ " Class \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 94071.087398 \n",
+ " 0.052736 \n",
+ " 0.028729 \n",
+ " 0.034768 \n",
+ " -0.073095 \n",
+ " 0.033608 \n",
+ " -0.081862 \n",
+ " 0.034549 \n",
+ " -0.020167 \n",
+ " -0.047859 \n",
+ " ... \n",
+ " 0.010722 \n",
+ " 0.000671 \n",
+ " -0.034084 \n",
+ " -0.001508 \n",
+ " 0.025786 \n",
+ " 0.041784 \n",
+ " 0.023764 \n",
+ " 0.019137 \n",
+ " 0.001844 \n",
+ " 80.302053 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 80746.806911 \n",
+ " -4.771948 \n",
+ " 3.623778 \n",
+ " -7.033281 \n",
+ " 4.542029 \n",
+ " -3.151225 \n",
+ " -1.397737 \n",
+ " -5.568731 \n",
+ " 0.570636 \n",
+ " -2.581123 \n",
+ " ... \n",
+ " 0.372319 \n",
+ " 0.713588 \n",
+ " 0.014049 \n",
+ " -0.040308 \n",
+ " -0.105130 \n",
+ " 0.041449 \n",
+ " 0.051648 \n",
+ " 0.170575 \n",
+ " 0.075667 \n",
+ " 122.211321 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
2 rows × 30 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Time V1 V2 V3 V4 V5 \\\n",
+ "Class \n",
+ "0 94071.087398 0.052736 0.028729 0.034768 -0.073095 0.033608 \n",
+ "1 80746.806911 -4.771948 3.623778 -7.033281 4.542029 -3.151225 \n",
+ "\n",
+ " V6 V7 V8 V9 ... V20 V21 \\\n",
+ "Class ... \n",
+ "0 -0.081862 0.034549 -0.020167 -0.047859 ... 0.010722 0.000671 \n",
+ "1 -1.397737 -5.568731 0.570636 -2.581123 ... 0.372319 0.713588 \n",
+ "\n",
+ " V22 V23 V24 V25 V26 V27 V28 \\\n",
+ "Class \n",
+ "0 -0.034084 -0.001508 0.025786 0.041784 0.023764 0.019137 0.001844 \n",
+ "1 0.014049 -0.040308 -0.105130 0.041449 0.051648 0.170575 0.075667 \n",
+ "\n",
+ " Amount \n",
+ "Class \n",
+ "0 80.302053 \n",
+ "1 122.211321 \n",
+ "\n",
+ "[2 rows x 30 columns]"
+ ]
+ },
+ "execution_count": 26,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "new_dataset.groupby('Class').mean()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "4IleywPs2xHB"
+ },
+ "source": [
+ "Splitting dataset into training and testind sets. (80%, 10%)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 27,
+ "metadata": {
+ "id": "MX647MoK1l9q"
+ },
+ "outputs": [],
+ "source": [
+ "# x represent the features(content of the dataset) and y represent the class.\n",
+ "x = new_dataset.drop(columns = 'Class',axis = 1)\n",
+ "y = new_dataset['Class']"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 28,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "3mEbVdXH1unU",
+ "outputId": "0daa8179-bc57-41ba-dcc7-a5272de72ae4"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ " Time V1 V2 V3 V4 V5 V6 \\\n",
+ "127383 78312.0 -1.033684 1.317406 1.240114 0.697731 -0.237730 -0.626897 \n",
+ "102015 68022.0 1.230948 0.069872 0.484287 1.382559 -0.395183 -0.196777 \n",
+ "89239 62487.0 0.986023 -0.541423 1.553750 0.737388 -1.313536 0.481834 \n",
+ "131185 79516.0 -1.201172 -0.548377 2.631439 2.854492 0.579070 0.961969 \n",
+ "236961 149039.0 1.725336 0.005862 0.499981 4.083052 -0.498462 0.598846 \n",
+ "... ... ... ... ... ... ... ... \n",
+ "279863 169142.0 -1.927883 1.125653 -4.518331 1.749293 -1.566487 -2.010494 \n",
+ "280143 169347.0 1.378559 1.289381 -5.004247 1.411850 0.442581 -1.326536 \n",
+ "280149 169351.0 -0.676143 1.126366 -2.213700 0.468308 -1.120541 -0.003346 \n",
+ "281144 169966.0 -3.113832 0.585864 -5.399730 1.817092 -0.840618 -2.943548 \n",
+ "281674 170348.0 1.991976 0.158476 -2.583441 0.408670 1.151147 -0.096695 \n",
+ "\n",
+ " V7 V8 V9 ... V20 V21 V22 \\\n",
+ "127383 0.088513 0.433316 -0.773460 ... 0.114241 -0.186250 -0.581192 \n",
+ "102015 -0.181241 0.027517 0.737572 ... -0.220772 -0.128193 -0.160311 \n",
+ "89239 -1.099914 0.451702 0.890411 ... -0.074475 0.291272 0.874943 \n",
+ "131185 -0.091708 0.221970 0.172547 ... 0.585115 -0.171671 -0.375741 \n",
+ "236961 -0.568135 0.223276 0.078894 ... -0.208526 -0.206461 -0.499058 \n",
+ "... ... ... ... ... ... ... ... \n",
+ "279863 -0.882850 0.697211 -2.064945 ... 1.252967 0.778584 -0.319189 \n",
+ "280143 -1.413170 0.248525 -1.127396 ... 0.226138 0.370612 0.028234 \n",
+ "280149 -2.234739 1.210158 -0.652250 ... 0.247968 0.751826 0.834108 \n",
+ "281144 -2.208002 1.058733 -1.632333 ... 0.306271 0.583276 -0.269209 \n",
+ "281674 0.223050 -0.068384 0.577829 ... -0.017652 -0.164350 -0.295135 \n",
+ "\n",
+ " V23 V24 V25 V26 V27 V28 Amount \n",
+ "127383 -0.059505 0.379718 0.025610 0.292520 0.014281 -0.057068 2.69 \n",
+ "102015 -0.147329 -0.127866 0.734199 -0.263437 0.033276 0.015172 3.29 \n",
+ "89239 -0.043822 0.265505 0.091530 0.504073 0.032954 0.026374 51.20 \n",
+ "131185 0.168826 -0.451343 0.028046 0.021925 -0.066196 -0.071260 124.09 \n",
+ "236961 0.354503 -0.079029 -0.510911 -0.305583 0.024437 -0.016899 56.78 \n",
+ "... ... ... ... ... ... ... ... \n",
+ "279863 0.639419 -0.294885 0.537503 0.788395 0.292680 0.147968 390.00 \n",
+ "280143 -0.145640 -0.081049 0.521875 0.739467 0.389152 0.186637 0.76 \n",
+ "280149 0.190944 0.032070 -0.739695 0.471111 0.385107 0.194361 77.89 \n",
+ "281144 -0.456108 -0.183659 -0.328168 0.606116 0.884876 -0.253700 245.00 \n",
+ "281674 -0.072173 -0.450261 0.313267 -0.289617 0.002988 -0.015309 42.53 \n",
+ "\n",
+ "[984 rows x 30 columns]\n"
+ ]
+ }
+ ],
+ "source": [
+ "# this prints the data except the class column.\n",
+ "print(x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 29,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "1EqhO2lx2hhL",
+ "outputId": "7791c58a-b03c-470b-a970-d46f7c0cb219"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "127383 0\n",
+ "102015 0\n",
+ "89239 0\n",
+ "131185 0\n",
+ "236961 0\n",
+ " ..\n",
+ "279863 1\n",
+ "280143 1\n",
+ "280149 1\n",
+ "281144 1\n",
+ "281674 1\n",
+ "Name: Class, Length: 984, dtype: int64\n"
+ ]
+ }
+ ],
+ "source": [
+ "# prints the classes.\n",
+ "print(y)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "qSqUv3E43xBc"
+ },
+ "source": [
+ "Splitting dataset into training and testind sets. (80%, 20%)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 30,
+ "metadata": {
+ "id": "-H0kGxDV3wlW"
+ },
+ "outputs": [],
+ "source": [
+ "x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.2,stratify=y,random_state=2)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 31,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "PZkFOLu74aMv",
+ "outputId": "2953cca8-2139-4958-c27f-95bd792626be"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "(984, 30) (787, 30) (197, 30)\n"
+ ]
+ }
+ ],
+ "source": [
+ "# original data, the training data, test data split.\n",
+ "print(x.shape,x_train.shape,x_test.shape)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "i_NpWsJq5xbV"
+ },
+ "source": [
+ "Training the Model."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "id": "emS5fKrq54_t"
+ },
+ "source": [
+ "Logistics Regression Model"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 32,
+ "metadata": {
+ "id": "MSeO0e5N53x8"
+ },
+ "outputs": [],
+ "source": [
+ "model = LogisticRegression()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 33,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 75
+ },
+ "id": "X7OyTmKh6EFQ",
+ "outputId": "23e23b9b-ee32-4756-f0e9-f2ae0751ef7b"
+ },
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "c:\\Fraud_Detection\\Lib\\site-packages\\sklearn\\linear_model\\_logistic.py:469: ConvergenceWarning: lbfgs failed to converge (status=1):\n",
+ "STOP: TOTAL NO. of ITERATIONS REACHED LIMIT.\n",
+ "\n",
+ "Increase the number of iterations (max_iter) or scale the data as shown in:\n",
+ " https://scikit-learn.org/stable/modules/preprocessing.html\n",
+ "Please also refer to the documentation for alternative solver options:\n",
+ " https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression\n",
+ " n_iter_i = _check_optimize_result(\n"
+ ]
+ },
+ {
+ "data": {
+ "text/html": [
+ "LogisticRegression() In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org. "
+ ],
+ "text/plain": [
+ "LogisticRegression()"
+ ]
+ },
+ "execution_count": 33,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# train the logistics regression model using the training data.\n",
+ "model.fit(x_train, y_train)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "metadata": {
+ "id": "22xncDXh79gU"
+ },
+ "outputs": [],
+ "source": [
+ "# check the accuracy of the training data.\n",
+ "x_train_prediction = model.predict(x_train)\n",
+ "training_data_accuracy = accuracy_score(x_train_prediction, y_train)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 35,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "_Hcjw3J48aRC",
+ "outputId": "947658b6-562a-4c69-9715-c9c2e5dc06c7"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Accuracy on the Training data : 94.40914866581956\n"
+ ]
+ }
+ ],
+ "source": [
+ "# if the accuracy is above 80% then it means the model is good\n",
+ "print('Accuracy on the Training data : ', training_data_accuracy * 100)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "metadata": {
+ "id": "ANEy8pA-9LJC"
+ },
+ "outputs": [],
+ "source": [
+ "# accuracy on the test data\n",
+ "x_test_prediction = model.predict(x_test)\n",
+ "test_data_accuracy = accuracy_score(x_test_prediction, y_test)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 37,
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "t1LQFPd19WWn",
+ "outputId": "f9c3a93e-c88e-4de1-ad56-659bc5853244"
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Accuracy on the Test data : 91.87817258883248\n"
+ ]
+ }
+ ],
+ "source": [
+ "print('Accuracy on the Test data : ', test_data_accuracy * 100)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "id": "Ct-52L3RADo0"
+ },
+ "outputs": [
+ {
+ "ename": "",
+ "evalue": "",
+ "output_type": "error",
+ "traceback": [
+ "\u001b[1;31mRunning cells with 'c:\\Users\\chris\\AppData\\Local\\Programs\\Python\\Python311\\python.exe' requires the ipykernel package.\n",
+ "\u001b[1;31mRun the following command to install 'ipykernel' into the Python environment. \n",
+ "\u001b[1;31mCommand: 'c:/Users/chris/AppData/Local/Programs/Python/Python311/python.exe -m pip install ipykernel -U --user --force-reinstall'"
+ ]
+ }
+ ],
+ "source": [
+ "import pickle\n",
+ "pickle.dump(model,open('model.pkl','wb'))"
+ ]
+ }
+ ],
+ "metadata": {
+ "colab": {
+ "provenance": []
+ },
+ "kernelspec": {
+ "display_name": "Python 3",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.12.4"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}