首页 > 其他分享 >数据探索

数据探索

时间:2023-02-26 21:57:45浏览次数:21  
标签:plot plt 20 探索 title 数据 fontsize data

import pandas as pd
catering_sale = 'D:\catering_sale.xls' # 餐饮数据
data = pd.read_excel(catering_sale, index_col = u'日期') # 读取数据,指定“日期”列为索引列
print(data)
print(data.describe(),data.describe().max()-data.describe().min())

 

import matplotlib.pyplot as plt # 导入图像库
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号

plt.figure() # 建立图像
p = data.boxplot(return_type='dict') # 画箱线图,直接使用DataFrame的方法
x = p['fliers'][0].get_xdata() # 'flies'即为异常值的标签
y = p['fliers'][0].get_ydata()
y.sort() # 从小到大排序,该方法直接改变原对象

for i in range(len(x)):
if i>0:
plt.annotate(y[i], xy = (x[i],y[i]), xytext=(x[i]+0.05 -0.8/(y[i]-y[i-1]),y[i]))
else:
plt.annotate(y[i], xy = (x[i],y[i]), xytext=(x[i]+0.08,y[i]))

plt.title('箱型图3154',fontsize=20)
plt.show() # 展示箱线图

 

 

 

 

import pandas as pd
import numpy as np
catering_sale = 'D:\Python\数据处理/catering_fish_congee.xls' # 餐饮数据
data = pd.read_excel(catering_sale,names=['date','sale']) # 读取数据,指定“日期”列为索引
print(data.describe())

bins = [0,500,1000,1500,2000,2500,3000,3500,4000]
labels = ['A_lei','[500,1000)','[1000,1500)','[1500,2000)',
'[2000,2500)','[2500,3000)','[3000,3500)','[3500,4000)']
data['sale分层'] = pd.cut(data.sale, bins, labels=labels)
print(data)

aggResult = data.groupby('sale分层').agg({'sale':'count'})
print(aggResult)

pAggResult = round(aggResult/aggResult.sum(), 2, )

 

 

import matplotlib.pyplot as plt
plt.figure(figsize=(10,6)) # 设置图框大小尺寸
pAggResult['sale'].plot(kind='bar',width=0.8,fontsize=10) # 绘制频率直方图
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.title('季度销售额频率分布直方图3154',fontsize=20)
plt.show()

 

import pandas as pd
import matplotlib.pyplot as plt
catering_dish_profit = 'D:/catering_dish_profit.xls' # 餐饮数据
data = pd.read_excel(catering_dish_profit)

x =data['盈利']
labels = data['菜品名']
plt.figure(figsize=(8,6))
plt.pie(x,labels=labels)
plt.rcParams['font.sans-serif'] = 'SimHei'
plt.title('菜品销售分布(饼图)3154',fontsize=20)
plt.axis('equal')
plt.show()

 

 

 

x=data['菜品名']
y=data['盈利']
plt.figure(figsize=(8,4))
plt.bar(x,y)
plt.rcParams['font.sans-serif']='SimHei'
plt.xlabel('菜品')
plt.ylabel('销量')
plt.title('菜品销售量分布(条形图)3152',fontsize=20)
plt.show()

 

 

#部门之间
import pandas as pd
import matplotlib.pyplot as plt
data=pd.read_excel("D:\dish_sale.xls")
plt.figure(figsize=(8,4))
plt.plot(data['月份'],data['A部门'],color='green',label='A部门',marker='o')
plt.plot(data['月份'],data['B部门'],color='red',label='B部门',marker='s')
plt.plot(data['月份'],data['C部门'],color='skyblue',label='C部门',marker='x')
plt.legend()
plt.ylabel('销售额(万元)')
plt.title('部门之间销售金额比较3154',fontsize=20)
plt.show()

#B部门
data=pd.read_excel("D:\dish_sale_b.xls")
plt.figure(figsize=(8,4))
plt.plot(data['月份'],data['2012年'],color='green',label='2012年',marker='o')
plt.plot(data['月份'],data['2013年'],color='red',label='2013年',marker='s')
plt.plot(data['月份'],data['2014年'],color='skyblue',label='2014年',marker='x')
plt.legend()
plt.ylabel('销售额(万元)')
plt.title('B部门各年份之间销售金额的比较3154',fontsize=20)
plt.show()

 

import pandas as pd
import matplotlib.pyplot as plt

df_normal = pd.read_csv("D:/user.csv")
plt.figure(figsize=(8,4))
plt.plot(df_normal["Date"],df_normal["Eletricity"])
plt.xlabel("日期")
#设置x轴刻度间隔
x_major_locator = plt.MultipleLocator(7)
ax=plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
plt.ylabel("每日电量")
plt.title("正常用户电量趋势3154",fontsize=20)
plt.rcParams['font.sans-serif']=['SimHei']
plt.show()

#窃电用户用电趋势分析
df_steal = pd.read_csv("D:/Steal user.csv")
plt.figure(figsize=(10,9))
plt.plot(df_steal["Date"],df_steal["Eletricity"])
plt.xlabel("日期")
plt.ylabel("日期")
x_major_locator=plt.MultipleLocator(7)
ax=plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
plt.title("窃电用户用电趋势3154",fontsize=20)
plt.rcParams['font.sans-serif']=['SimHei']
plt.show()

 

 

 

 

 

 

import pandas as pd
dish_profit = 'D:/catering_dish_profit.xls'
data=pd.read_excel(dish_profit,index_col='菜品名')
data=data['盈利'].copy()
data.sort_values(ascending=False)

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.figure()
data.plot(kind='bar')
plt.ylabel('盈利(无)')
p=1.0*data.cumsum()/data.sum()
p.plot(color='r',secondary_y=True,style='-o',linewidth=2)
plt.annotate(format(p[6],'.4%'),xy=(6,p[6]),xytext=(6*0.9,p[6]*0.9),arrowprops=dict(arrowstyle="->",connectionstyle="arc3,rad=.2"))#图上标注
plt.ylabel('盈利(比例')
plt.title("菜品盈利数据帕累托图3154",fontsize=20)
plt.rcParams['font.sans-serif']=['SimHei']
plt.show()

 

 

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.figure(figsize=(7,5))

import numpy as np
x=np.linspace(0,2*np.pi,50)
y=np.sin(x)
plt.plot(x,y,'bp--')
plt.title("正弦曲线图3154",fontsize=20)
plt.show()

 

 

labels='Frogs','Hogs','Dogs','Logs'
sizes=[15,30,45,10]
colors=['yellowgreen','gold','lightskyblue','lightcoral']
explode=(0,0.1,0,0)
plt.pie(sizes,explode=explode,labels=labels,colors=colors,autopct='%1.lf%%',shadow=True,startangle=90)
plt.axis('equal')#显示为圆
plt.title("饼图3154",fontsize=20)
plt.show()

 

 

 

import numpy as np
x=np.random.randn(1000)
plt.hist(x,10)
plt.title("二维条形直方图3154",fontsize=20)
plt.show()

 

 

import numpy as np
import pandas as pd
x = np.random.randn(1000) # 1000个服从正态分布的随机数
D = pd.DataFrame([x, x+1]).T # 构造两列的DataFrame
D.plot(kind = 'box') # 调用Series内置的绘图方法画图,用kind参数指定箱型图box
plt.title("箱型图3154",fontsize=20)
plt.show()

 

 

import numpy as np
import pandas as pd
x=pd.Series(np.exp(np.arange(20)))
plt.figure(figsize=(8,9))
axl=plt.subplot(2,1,1)
x.plot(label='原始数据图',legend=True)
plt.title("原始数据图3154",fontsize=20)
axl=plt.subplot(2,1,2)
x.plot(logy=True,label='对数数据图',legend=True)
plt.title("对数数据图3154",fontsize=20)
plt.show()

 

import numpy as np
import pandas as pd

error=np.random.randn(10)
y=pd.Series(np.sin(np.arange(10)))
y.plot(yerr=error)
plt.title("误差条形图3154",fontsize=20)
plt.show()

 

总结:

检测异常值和缺失值 → 数据特征分析(频率分布分析、对比分析、帕累托分析、周期性分析、相关性分析等)

Matplotlib、pandas 、numpy + 规范(中文、正负号)+ 读取数据 + …… + 横纵坐标、标题

 

标签:plot,plt,20,探索,title,数据,fontsize,data
From: https://www.cnblogs.com/jkx110/p/17157860.html

相关文章

  • python数据挖掘绘图
                                                         ......
  • 7.4-总线仲裁和数据传输方式
    菊花链式串行总线仲裁什么是总线仲裁,是指在总线上同一时刻只能有一个主设备占用总线,当计算机系统中只有一个主设备的时候不存在仲裁问题,当多个主设备同时提出总线占用的申......
  • 6.15-多周期MIPS CPU数据通路(1)
    单周期MIPS关键路径LW指令时间延迟问题由于系统采用单周期实现所以整个系统的时钟周期取决于最慢那一条指令的时间延迟,以LW指令为例,涉及到指令存储器以及数据存储器的......
  • 1、Kyuubi在竞技世界大数据平台实践--Kyuubi on K8S读取kerberosed CD
    背景为满足业务大数据架构使用多种sql引擎:spark,flink,trino(同时查询hive,clickhouse等),需要部署一个统一的sql入口,该入口满足多引擎多平台运行;本次实践是上述需求的一个......
  • 如何实现页面倒计时秒杀功能 并保持数据与后端一致 html cdn vue模式下动态创建公共元
      首先我们来看需求,实现页面倒计时,关键是前端展示时分秒天,做好自己的倒计时函数,然后刷新页面依然会从数据源中拿到后端时刻刷新的毫秒值,再进行倒计时,这样周而复始,就......
  • 6.4-数据通路实例,解释数据通路与CPU实例的关系
    单总线结构的CPU所有的功能部件都链接在总线上,并且通过总线进行数据交互各部件间通过总线进行传输设计简单,必须经过分时操作读写过程PC程序寄存器,通过AR使用地址......
  • 数据结构与算法概述
     一、数据结构与算法简介从广义上讲,数据结构是指一组数据的存储结构。算法是操作数据的一组方法。从狭义上讲,数据结构与算法是指某些著名的数据结构和算法,比如数组、列......
  • 第一周 python数据分析与挖掘技术实战 第三章
    总结 ............. 图3-1 importpandasaspdcatering_sale='catering_sale.xls'data=pd.read_excel(catering_sale,index_col=u'日期')print(data.descri......
  • 数据分析
    importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltpath='./data/catering_sale.xls'data=pd.read_excel(path,index_col=u'日期')#读取......
  • python数据分析画图
    importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltpath='./data/catering_sale.xls'data=pd.read_excel(path,index_col=u'日期')#读取......