# todo 服务器日志分析案例
分析知识点
1.df查看命令
df.semple(5)#随机采样5条
df.shape#查看数据条数
df.dtypes#看到时间不是时间对象而是字符串
df.info()#查看内存占用情况 总共 可以替代dtype
df['api'].describe()#查看接口是否相同 unique不同 freq重复
df.interval.describe()#std标准差 0无浮动 平均值是60 unique查看有多少种类型
df.interval.unique()#判断有无不同数据
2.删除命令
df=df.drop('api',axis=1)#优化内存 指定删除
df=df.drop(['id','interval'],axis=1)
3.时间索引和截取
df.index
df.index=pd.to_datetime(df.created_at)#转换字符串索引为时间类型 查找更快更方便
df['2019-5-1']
#切出一天数据 绘制出一天内接口调用情况
df['2019-5-1']['count'].plot()
#凌晨无人访问 下午2,3点第一个访问高峰 晚上8,9点 第二个访问高峰 #为凸显数据特征 重新以小时为单位采样
df2=df['2019-5-1']
4.重采样
df2=df2[['count']].resample['1H'].mean()#注意重采样是df格式
df2['count'].plot()
#重采样 为20分钟 重绘图
data=df['2019-5-1'].resample('20T').mean
data[['res_time_sum','res_time_min','res_time_max','res_time_avg']].plot()#注意上面已经筛选过了
#得到高峰时段结论
5.折线图
#折线图 直方图 查看业务高峰时段不清晰 不如采用柱状图
plt.figure(figsize=(10,3))#放大图像 单位英寸
df2['count'].plot(kind='bar')
plt.xticks(rotation=60)#图注释文字旋转角度 更清晰
6.箱线图
#用箱线图查看一天内访问是否有异常值 是否单位时间访问过多
df['2019-5-1'][['count']].boxplot(showmeans=True,meanline=True)#注意是df对象 显示平均值平均线
7.筛选命令
df[(df.created_at>='2019-5-1')&(df.created_at<'2019-5-2')]#注意括号 操作符不兼值 字符串模糊查询
#下面查看周末和平常
df['2019-5-2'].index.weekday#0-周一 1-周二 2-周三
#加一列数据辅助筛选
df['weekday']=df.index.weekday
df.head()
#加一列判断是否是周末
d
服务器Log日志分析学习笔记
最新推荐文章于 2023-10-18 23:39:19 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)