Python 使用Matplotlib进行主动产品销售分析
在Python中,使用Matplotlib的各种功能,如read_csv、sort_values、group_by等,可以进行销售数据分析。每个从事任何类型产品销售的在线业务都使用产品销售数据分析来提高销售并更好地了解他们的客户。从事任何类型电子商务业务的公司都可以利用销售和客户数据来识别趋势、模式和见解,以改善销售和收入。销售数据可以用于确定哪种产品具有最高的吸引力,哪个节日季节的需求最高,以及许多其他趋势,这些趋势可以帮助增加销售额。
Python是一种流行的用于数据分析和可视化的编程语言。Python提供了许多可以有效进行产品销售分析的库和工具。在本文中,我们将使用Matplotlib,这是Python中一种流行的数据可视化库,来进行主动产品销售分析。
我们将使用numpy,pandas和matplotlib来使用样本销售数据进行主动产品销售分析。可以在此处找到样本销售数据。
逐步销售数据分析
数据读取和处理
在本示例中用于分析的样本销售数据具有以下列-
Order_Number | Product_type | Quantity | Price_Each | Order_Date | Address |
---|---|---|---|---|---|
- 订单编号 − 每个下单的独特编号。
-
产品类型 − 产品的类别。
-
数量 − 订购的产品数量。
-
单价 − 每个单位的价格。
-
下单日期 − 下单的日期和时间。
-
地址 − 产品交付的地址。
我们需要导入pandas和numpy库来读取和处理样本销售数据。以下是读取数据的代码:
样本销售数据可以在Kaggle平台上找到这里。
示例
import pandas as pd
import numpy as np
import io
from google.colab import files
uploaded = files.upload()
# read csv data
Sales_data = pd.read_csv(io.BytesIO(uploaded['sample_sales_data.csv']), encoding='cp1252')
Sales_data.sort_values(by=['ORDER_NUMBER'])
输出
一旦我们读取了数据,我们就必须对数据进行处理。订单日期列需要转换为DateTime对象,并且我们可以从订单日期中提取月份和年份,并添加一个新的列用于月份、年份和总销售额。数据清洗和处理的代码如下:
示例
Sales_data['ORDER_DATE'] = pd.to_datetime(Sales_data['ORDER_DATE'])
Sales_data['MONTH'] = Sales_data['ORDER_DATE'].dt.month
Sales_data['YEAR'] = Sales_data['ORDER_DATE'].dt.year
Sales_data['TOTAL_SALES'] = Sales_data['QUANTITY'] * Sales_data['PRICE_EACH']
Sales_data.sort_values(by=['ORDER_NUMBER'])
输出
新的列月份、年份和总销售额将帮助我们分析销售趋势。现在我们可以使用这些列在Python的matplotlib库中绘制不同的图表,从sample_sales_data中获得一些见解。
数据可视化
到目前为止,我们已经读取和处理了数据,以便在Python的matplotlib库中使用它来绘制不同的图表。Matplotlib提供了线图、柱状图和散点图来可视化数据。
随时间的推移销售总额的可视化
为了可视化随时间的推移的销售总额,我们可以使用matplotlib绘制一条线图。为了实现这一目标,我们需要按年份和月份对数据进行分组,使用matplotlib创建一条线图,并设置标题和坐标轴标签,并展示该图表。
- 将数据按年份和月份进行分组
-
使用matplotlib创建一条线图
-
设置标题和坐标轴标签
-
显示图表
示例
import matplotlib.pyplot as plt
# Group the data by year and month
sales_by_month = Sales_data.groupby(['YEAR', 'MONTH']).sum()['TOTAL_SALES'].reset_index()
# Create a line chart
plt.plot(sales_by_month.index, sales_by_month.values)
# Set the title and axis labels
plt.title('Total Sales by Month')
plt.xlabel('Month')
plt.ylabel('Sales ($)')
# Display the chart
plt.show()
输出
年度收入可视化
我们可以将每年的收入进行可视化,可以看出哪一年的收入最高,哪一年的收入最低。为了做到这一点,我们需要−
- 按年份对销售数据进行分组
-
使用Seaborn创建一个条形图(Seaborn在matplotlib下面)
-
设置标题和轴标签
-
显示图表
示例
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# Annual Revenue
plt.figure(figsize=(10,6))
yearly_revenue = Sales_data.groupby(['YEAR'])['TOTAL_SALES'].sum().reset_index()
sns.barplot(x="YEAR", y="TOTAL_SALES", data=yearly_revenue)
plt.title('Annual Revenue', fontsize = 20)
plt.xlabel('Year', fontsize = 16)
plt.ylabel('Revenue', fontsize = 16)
plt.show()
输出
结论
我们可以使用Python中的matplotlib分析和可视化任何类型的产品销售数据,并获得标准数据洞察力,供公司用于增加销售额。在上述文章中,我们使用Python中的matplotlib、pandas和numpy分析了随时间变化的总销售额和年度收入。