6.27数据分析实训任务1.1(python)

import pandas as pd

import matplotlib.pyplot as plt

读取 CSV 文件

data = pd.read_csv(r"C:\Users\XXGC\Desktop\shiuxun3.csv")

将订单创建时间转换为 datetime 类型

data["订单创建时间"] = pd.to_datetime(data["订单创建时间"])

提取小时信息

data["小时"] = data["订单创建时间"].dt.hour

计算每个小时的订单数量

hourly_orders = data.groupby("小时")["订单编号"].count()

绘制折线图

plt.figure(figsize=(12, 6))

plt.plot(hourly_orders.index, hourly_orders.values)

plt.xlabel("小时")

plt.ylabel("订单数量")

plt.title("订单数量随时间的变化(小时维度)")

plt.xticks(range(0, 24, 2))

plt.grid(True)

plt.show()

数据分析

1. 订单数量最多的小时

max_hour = hourly_orders.idxmax()

max_orders = hourly_orders.max()

print("订单数量最多的小时是:{} 点,订单数量为:{}".format(max_hour, max_orders))

2. 总订单数量

total_orders = data["订单编号"].count()

print("总订单数量为:{}".format(total_orders))

3. 平均订单金额

average_amount = data["总金额"].mean()

print("平均订单金额为:{:.2f}".format(average_amount))

4. 退款订单数量和退款金额

refund_orders = data[data["退款金额"] > 0]

refund_orders_count = refund_orders.shape[0]

refund_amount = refund_orders["退款金额"].sum()

print("退款订单数量为:{},退款金额为:{:.2f}".format(refund_orders_count, refund_amount))

相关推荐
豌豆花下猫21 分钟前
Python 潮流周刊#97:CUDA 终于原生支持 Python 了!(摘要)
后端·python·ai
随机惯性粒子群26 分钟前
mujoco graspnet 仿真项目的复现记录
python·机器学习·机械臂·graspnet·mujcoo
头发尚存的猿小二28 分钟前
2024年第十五届蓝桥杯C&C++大学A组--成绩统计
c语言·开发语言·c++·蓝桥杯
Json_181790144801 小时前
亚马逊Amazon商品详情API接口概述,json数据示例返回(测试)
开发语言·python
bingbingyihao1 小时前
通过代码获取接口文档工具
开发语言·前端·javascript
DevangLic1 小时前
下【STL 之速通pair vector list stack queue set map 】
开发语言·c++·list
你又食言了哦1 小时前
qt上设置 WebAssembly显示中文
开发语言·qt·wasm
测试杂货铺1 小时前
软件测试之功能测试详解
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
前端大菜鸟_2 小时前
河北工程大学e2e平台,python
python·e2e·河北工程大学
顾琬清2 小时前
Linux系统Docker部署开源在线协作笔记Trilium Notes与远程访问详细教程
开发语言·后端·golang