当前位置: 首页 > news >正文

怎么做网站加盟百度seo多久能优化关键词

怎么做网站加盟,百度seo多久能优化关键词,青岛会议网站制作公司,网上购物商城app🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

 

🤵‍♂️ 个人主页:@艾派森的个人主页

✍🏻作者简介:Python学习者
🐋 希望大家多多支持,我们一起进步!😄
如果文章对你有帮助的话,
欢迎评论 💬点赞👍🏻 收藏 📂加关注+


目录

1.项目背景

2.数据集介绍

3.技术工具

4.导入数据

5.数据可视化

源代码


1.项目背景

        在电子商务蓬勃发展的今天,欺诈性交易已成为一个不容忽视的问题。随着消费者对于在线购物的依赖程度不断加深,电子商务市场的规模持续扩大,但与此同时,欺诈行为也日益猖獗。这些欺诈行为不仅损害了消费者的权益,降低了他们对电子商务的信任度,还严重干扰了商家的正常经营秩序,对整个电子商务生态系统造成了巨大的冲击。

        电子商务欺诈行为的多样性和隐蔽性给防范和打击带来了极大的挑战。欺诈者可能采用各种手段,如伪造身份、发布虚假商品信息、恶意刷单、虚假评价等,以达成非法获利的目的。这些欺诈行为往往隐藏在庞大的交易数据中,难以被直接识别和发现,因此,需要借助先进的数据分析技术来揭示其中的规律和特点。

        数据驱动的欺诈防范策略在电子商务领域变得尤为重要。随着大数据和人工智能技术的快速发展,对大量的电子商务交易数据进行深入分析和挖掘成为可能。通过构建欺诈性电子商务交易数据集,并利用可视化分析技术将数据以直观、易懂的方式呈现出来,可以帮助分析人员快速理解数据中的信息,发现潜在的欺诈风险,并据此制定针对性的防范和应对策略。

        可视化分析在欺诈防范中发挥着至关重要的作用。它可以将复杂的数据转化为图表、图像等易于理解的视觉形式,帮助分析人员迅速捕捉数据中的关键信息和异常模式。通过对欺诈性电子商务交易数据集的可视化分析,我们可以更深入地了解欺诈行为的特点和规律,发现欺诈行为的潜在趋势和关联性,为制定更加有效的防范措施提供科学依据。

        因此,研究欺诈性电子商务交易数据集的可视化分析具有重要的理论意义和实践价值。它不仅有助于我们深入理解欺诈行为的本质和规律,还有助于提升电子商务市场的安全性和可信度,保护消费者和商家的合法权益,促进电子商务的健康发展。

2.数据集介绍

        本实验数据集来源于Kaggle,原始数据集分为训练集和测试集,其中训练集共有1472952条数据,16个变量。各变量含义解释如下:

Transaction ID:每个事务的唯一标识符。

Customer ID:每个客户的唯一标识符。

Transaction Amount:交易中交易的总金额。

Transaction Date:交易发生的日期和时间。

Payment Method:用于完成交易的方式(如信用卡、PayPal等)。

Product Category:交易中涉及的产品类别。

Quantity:交易中涉及的产品数量。

Customer Age:进行交易的客户的年龄。

Transaction Date:客户的地理位置。

Device Used:用于进行交易的设备类型(例如,移动设备、桌面设备)。

IP Address:用于交易的设备的IP地址。

Shipping Address:产品发货的地址。

Billing Address :与付款方式相关联的地址。

Is Fraudulent:表示事务是否欺诈性的二进制指示器(1表示欺诈性,0表示合法)。

Account Age Days:客户账户在交易时的存续天数。

Transaction Hour:交易发生的当天的时间。

3.技术工具

Python版本:3.9

代码编辑器:jupyter notebook

4.导入数据

导入数据分析第三方库

导入数据集

查看数据集大小

查看数据基本信息

查看数值型变量的描述性统计

我们可以看到客户年龄最小值是-16,这是不可能的,所以我们必须修复客户年龄列。

查看非数值型变量的描述性统计

统计数据缺失值情况

可以发现数据集中并不存在缺失值 

统计重复值情况

可以发现数据集中并不存在重复值

使用箱线图查看客户年龄分布

定义一个数据预处理函数,并处理我们的数据集

再次查看数据基本信息

数据集已被清理和压缩,其大小从180 MB减少到57MB。

5.数据可视化

交易金额普遍分布在0到1000之间且数据是右偏的。

 

源代码

Transaction ID:每个事务的唯一标识符。
Customer ID:每个客户的唯一标识符。
Transaction Amount:交易中交易的总金额。
Transaction Date:交易发生的日期和时间。
Payment Method:用于完成交易的方式(如信用卡、PayPal等)。
Product Category:交易中涉及的产品类别。
Quantity:交易中涉及的产品数量。
Customer Age:进行交易的客户的年龄。
Transaction Date:客户的地理位置。
Device Used:用于进行交易的设备类型(例如,移动设备、桌面设备)。
IP Address:用于交易的设备的IP地址。
Shipping Address:产品发货的地址。
Billing Address	:与付款方式相关联的地址。
Is Fraudulent:表示事务是否欺诈性的二进制指示器(1表示欺诈性,0表示合法)。
Account Age Days:客户账户在交易时的存续天数。
Transaction Hour:交易发生的当天的时间。
import numpy as np 
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import plotly.express as px
import time
import warnings
warnings.filterwarnings('ignore')train_df = pd.read_csv('Fraudulent_E-Commerce_Transaction_Data.csv')
train_df.head()
train_df.shape
train_df.info()
train_df.describe()
我们可以看到客户年龄最小值是-16,这是不可能的,所以我们必须修复客户年龄列
train_df.describe(include='O')
train_df.isnull().sum()
train_df.duplicated().sum()
px.box(data_frame=train_df,x="Customer Age",width=500,height=300)
def clean_data(df) -> pd.DataFrame: ##我们需要将**Transaction Date**列从对象类型转换为日期时间格式。df["Transaction Date"] = pd.to_datetime(df["Transaction Date"])## 从交易日期提取日、周、月df['Transaction Day'] = df["Transaction Date"].dt.daydf["Transaction DOW"] = df["Transaction Date"].dt.day_of_weekdf["Transaction Month"] = df["Transaction Date"].dt.month## 修复客户年龄mean_value = np.round(df['Customer Age'].mean(),0) df['Customer Age'] = np.where(df['Customer Age'] <= -9, np.abs(df['Customer Age']), df['Customer Age'])df['Customer Age'] = np.where(df['Customer Age'] < 9, mean_value, df['Customer Age'])## 如果“Shipping Address”与“Billing Address”相同,则取值为1,否则取值为0。df["Is Address Match"] = (df["Shipping Address"] == df["Billing Address"]).astype(int)### 删除不相关的特征并向下转换数据类型以减小数据集大小df.drop(columns=["Transaction ID", "Customer ID", "Customer Location","IP Address", "Transaction Date","Shipping Address","Billing Address"], inplace=True)int_col = df.select_dtypes(include="int").columnsfloat_col = df.select_dtypes(include="float").columnsdf[int_col] = df[int_col].apply(pd.to_numeric, downcast='integer')df[float_col] = df[float_col].apply(pd.to_numeric, downcast='float')return dftrain_df = clean_data(train_df)
train_df.head()
train_df.info()
数据集已被清理和压缩,其大小从180 MB减少到57MB。
plt.figure(figsize=(10,4))
sns.histplot(train_df["Transaction Amount"],bins=200)
plt.show()
交易金额普遍分布在0到1000之间
数据是右偏的。
payment_count = train_df["Payment Method"].value_counts()
plt.figure(figsize=(15,4))
plt.subplot(1,2,1)
sns.set_palette('pastel')
colors = sns.color_palette()
plt.pie(payment_count,labels = payment_count.index,shadow=True,autopct='%1.1f%%',colors=colors,wedgeprops=dict(width=0.8,edgecolor="w"))
plt.title("Payment Method")
plt.subplot(1,2,2)
sns.countplot(data=train_df,x="Payment Method",edgecolor="black",linewidth=1, palette="Set2")
plt.show()
我们可以看到所有的付款方式都是平均分配的
category_count = train_df["Product Category"].value_counts()
plt.figure(figsize=(15,4))
plt.subplot(1,2,1)
sns.set_palette('pastel')
colors = sns.color_palette()
plt.pie(category_count,labels = category_count.index,shadow=True,autopct='%1.1f%%',colors=colors,wedgeprops=dict(width=0.8,edgecolor="w"))
plt.title("Product Category")plt.subplot(1,2,2)
ax = sns.countplot(data=train_df,x="Product Category",edgecolor="black",linewidth=1, palette="Set2")
我们可以看到,所有的产品类别也是均匀分布的
quantity_count = train_df["Quantity"].value_counts()
plt.figure(figsize=(15,4))
plt.subplot(1,2,1)
sns.set_palette('pastel')
colors = sns.color_palette()
plt.pie(quantity_count,labels = quantity_count.index,shadow=True,autopct='%1.1f%%',colors=colors,wedgeprops=dict(width=0.8,edgecolor="w"))
plt.title("Quantity")
plt.subplot(1,2,2)
ax = sns.countplot(data=train_df,x="Quantity",edgecolor="black",linewidth=1, palette="Set2")
plt.figure(figsize=(7,4))
sns.histplot(data=train_df, x="Customer Age",bins=150,kde=True,color='orange')
plt.show()
device_count = train_df["Device Used"].value_counts()
plt.figure(figsize=(15,4))
plt.subplot(1,2,1)
sns.set_palette('pastel')
colors = sns.color_palette()
plt.pie(device_count,labels = device_count.index,shadow=True,autopct='%1.1f%%',colors=colors,wedgeprops=dict(width=0.8,edgecolor="w"))
plt.title("Device Used")
plt.subplot(1,2,2)
ax = sns.countplot(data=train_df,x="Device Used",edgecolor="black",linewidth=1, palette="Set2")
hour_count = train_df["Transaction Hour"].value_counts().head(15)
plt.figure(figsize=(10,4))
sns.set_palette('Set2')
colors = sns.color_palette()
ax=sns.barplot(x=hour_count.index, y=hour_count.values,palette=colors)
plt.xticks(rotation=80)
plt.show()
plt.figure(figsize=(5,3))
sns.violinplot(data=train_df, x='Is Fraudulent', y='Transaction Amount')
plt.show()
column = ['Payment Method', 'Product Category', 'Quantity', 'Device Used','Transaction DOW', 'Transaction Month','Is Address Match']
plt.figure(figsize=(10,35))
plot_num = 1
for col in column:plt.subplot(10,2,plot_num)sns.countplot(data=train_df, x=col, hue="Is Fraudulent")plt.xticks(rotation=90)plt.title(col)plt.tight_layout()plot_num += 1
plt.figure(figsize=(10,6))
plt.subplot(1,2,1)
sns.boxenplot(x='Is Fraudulent', y='Transaction Amount', data=train_df)
plt.subplot(1,2,2)
sns.boxenplot(x='Is Fraudulent', y='Transaction Day', data=train_df)
plt.yticks(np.arange(0,32))
plt.show()

资料获取,更多粉丝福利,关注下方公众号获取

在这里插入图片描述

http://www.dinnco.com/news/77163.html

相关文章:

  • 佛山大型的网站制作今日新闻最新头条
  • 什么是品牌网站建设手机关键词点击排名软件
  • 怎么创建网站详细流程2021网络营销成功案例
  • 做网站实现图片自动压缩网页制作步骤
  • 网站关键字如何设置百度一下首页网页
  • 绵阳网站建设 小程序福州百度快速优化排名
  • 大学网站建设管理办法信息化百度一下首页
  • 重庆做网站 哪个好些嘛亚洲长尾关键词挖掘
  • 商标注册查询系统官网厦门关键词优化平台
  • 国外那些网站是做五金饰品批发产品推广方法
  • 公司网站域名如何续费广州网站营销推广
  • 嵊州网站设计西安网站制作工作室
  • 最专业的礼品网站案例参考国家免费职业技能培训
  • 合肥网站外包百度竞价排名广告定价
  • 做网站用什么电脑二级域名网址查询
  • wap asp网站模板下载自动seo网站源码
  • 网站关键词优化排名软文自助发稿平台oem
  • 郑州网站开发公司电话企业查询信息平台
  • php动态网页制作教程优化模型
  • 做网站被骗五千多郑州seo哪家好
  • 现代网站开发设计报告企业站seo价格
  • 保定网站建设哪家好公司网站设计方案
  • 廊坊网站建设方案服务搜索引擎优化搜索优化
  • 网站免费在线客服系统宁德市人力资源和社会保障局
  • 网站制作 培训搜狗收录批量查询
  • wordpress淘客单页主题电脑清理优化大师
  • 网页设计模板素材简单无锡谷歌优化
  • 洛阳网站排名seo技术教学视频
  • 网站建设补贴网站播放视频速度优化
  • 网站如何做延迟加载百度搜索风云榜下载