数据上手三部曲
1.了解数据大小
df.shape
2.查看前几行/最后几行数据
df.head()
df.tail()
3.查看数据类型与缺失值
df.info()
该函数可以看出每一列的数据类型,有多少缺失值
日期型变量处理
1.导包
import calendar
from datetime import datetime
2.获取周一到周日列表
calendar.day_name[:]
引入calendar中的day_name,列举出周一到周日
3.将字符串时间转换成日期时间类型
# 使用datatime中的striptime函数将字符串转换为日期时间类型
# 注意这里的datatime是一个包不是我们dataframe里的变量名
# 使用"%Y-%m-%d"来指定输入日期的格式是按照年月日排序,有时候可能会有月日年的排序形式
# dateString是字符串时间,比如2011-01-01
dateDT = datetime.strptime(dateString,"%Y-%m-%d")
#使用转换好的日期时间得到对应的星期几标签 0-6
week_day = dateDT.weekday()
#使用转换好的日期时间得到对应的月份标签 1-12
month = dateDT.month()
可视化
1.在一张画布上绘多张图
#建立画布,并设置大小
fig = plt.figure(figsize = (18, 5))
#添加子图1
ax1 = fig.add_subplot(121) #1行两列 第1张图
sns.boxplot(data=BikeData, y="count")
ax1.set(ylabel='',title="") #设置标签
#添加子图2
ax2 = fig.add_subplot(122) #1行两列 第2张图
sns.boxplot(data=BikeData, y="count")
ax2.set(ylabel='',title="") #设置标签
#以此类推~
#
2.相关系数计算和可视化
(1)查看相关系数矩阵
函数:
df.corr()#可以设定看那几列的相关系数
(2)根据系数矩阵画热力图
函数:
sns.heatmap(correlation, vmax=.8, square=True, annot=True) #correlation为相关系数矩阵
3.散点图
df.lmplot()
#新知识,拟合的曲线斜率中可以体现出相关系数
df.regplot()
4.多分类绘图函数再学习
sns.FacetGrid(data = BikeData, size=8, aspect=1.5).\
map(sns.pointplot, 'hour', 'count','weekday', palette='deep', ci=None).\
add_legend()
# 'hour', 'count','weekday'按顺序分别是 横坐标-hour,纵坐标-count,分类-weekday