当前位置:   article > 正文

python用于数据分析的案例,python数据分析案例教程_python 数据分析项目案例

python 数据分析项目案例

大家好,给大家分享一下利用python进行数据分析案例,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!

目录

案例

需求分析

 实现步骤

代码

1.

2.

​3.

 可视化

 数据集


注:数据集在最后

案例

某公司,有2份数据文件,现需要对其进行分析处理,计算每日的销售额并以柱状图表的形式进行展示。

 

需求分析

 实现步骤

  1. 设计一个类,可以完成数据的封装
  2. 设计一个抽象类,定义文件读取的相关功能,并使用子类实现具体功能
  3. 读取文件,生产数据对象
  4. 进行数据需求的逻辑计算(计算每一天的销售额)
  5. 通过PyEcharts进行图形绘制

代码

1.

  1. """
  2. 数据定义的类
  3. """
  4. class Record:
  5. def __init__(self,data,order_id,money,province):
  6. self.data=data
  7. self.order_id=order_id
  8. self.money=money
  9. self.province=province
  10. def __str__(self):
  11. return f"{self.data},{self.order_id},{self.money},{self.province}"

2.

  1. """
  2. 和文件相关的类定义
  3. """
  4. import json
  5. from data_define import Record
  6. class FileReader:
  7. def read_data(self):
  8. #读取文件的数据,读取到的每一条数据都转换为Record对象,将它们都封装到list内返回即可
  9. pass
  10. class TextFileReader(FileReader):
  11. def __init__(self,path):
  12. self.path=path
  13. #复写(实现抽象方法)父类的方法
  14. def read_data(self):
  15. f=open(self.path,"r",encoding="utf-8")
  16. record_list=[]
  17. for line in f.readlines():
  18. line=line.strip()#消除读取到的每一行数据中的“\n”
  19. data_list=line.split(",")
  20. record=Record(data_list[0],data_list[1],int(data_list[2]),data_list[3])
  21. record_list.append(record)
  22. f.close()
  23. return record_list
  24. class JsonFileReader(FileReader):
  25. def __init__(self,path):
  26. self.path=path
  27. #复写(实现抽象方法)父类的方法
  28. def read_data(self):
  29. f=open(self.path,"r",encoding="utf-8")
  30. record_list=[]
  31. for line in f.readlines():
  32. data_dict=json.loads(line)
  33. record=Record(data_dict["date"],data_dict["order_id"],int(data_dict["money"]),data_dict["province"])
  34. record_list.append(record)
  35. f.close()
  36. return record_list
  37. if __name__ == '__main__':
  38. text_file_reader=TextFileReader("D:/2011年1月销售数据.txt")
  39. list1=text_file_reader.read_data()
  40. for l in list1:
  41. print(l)
  42. print("========================================================================")
  43. json_file_reader=JsonFileReader("D:/2011年2月销售数据JSON.txt")
  44. list2=json_file_reader.read_data()
  45. for l in list2:
  46. print(l)


3.

  1. from pyecharts.charts import Bar
  2. from pyecharts.options import *
  3. from pyecharts.globals import *
  4. from file_define import FileReader,TextFileReader,JsonFileReader
  5. from data_define import Record
  6. text_file_reader=TextFileReader("D:/2011年1月销售数据.txt")
  7. json_file_reader=JsonFileReader("D:/2011年2月销售数据JSON.txt")
  8. jan_data=text_file_reader.read_data()
  9. feb_data=json_file_reader.read_data()
  10. all_data:list[Record]=jan_data+feb_data
  11. #开始进行数据计算
  12. data_dict={}
  13. for record in all_data:
  14. if record.data in data_dict.keys():
  15. data_dict[record.data]+=record.money
  16. else:
  17. data_dict[record.data]=record.money
  18. #可视化
  19. bar = Bar(init_opts=InitOpts(theme=ThemeType.LIGHT))
  20. bar.add_xaxis(list(data_dict.keys()))
  21. bar.add_yaxis("销售额",list(data_dict.values()),label_opts=LabelOpts(is_show=False))
  22. bar.set_global_opts(
  23. title_opts=TitleOpts(title="每日销售额")
  24. )
  25. bar.render("每日销售额柱状图.html")

 

 可视化

 数据集

链接:https://pan.baidu.com/s/112SC1eN5wCAlp16E4EXiIg 
提取码:1234

文章知识点与官方知识档案匹配,可进一步学习相关知识
Python入门技能树数据分析CSV文件413932 人正在系统学习中
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/485334
推荐阅读
相关标签
  

闽ICP备14008679号