数据挖掘2

day01
Matplotlib
折线图:描述数据的变化趋势
散点图:描述分布
直方图:同类别的分布
柱状图:不同类型数据的大小比较
饼图:比例
fig,axes = plt.subplots(nrows=1,ncols=2,figsize=(20,8),dpi=100)
#定义一个方法,可以将每一个axes都写入刻度
def set_axes(ax):
x_ticks=[“11点{}分”.format(i) for i in range(60)]
#设置绘制的区域
plt.sca(ax)
plt.xticks(x,x_ticks)
plt.xlabel(“时间”)
Numpy
数组结构 b = np.array([[1,2,3],[4,5,6]])
维度 b.ndim 2
shape b.shape (2,3)
dtype b.dtype dtype(‘int32’)
Pandas
DataFrame:行列概念
Series:
互相转换
data = {‘Student’:[‘XiaoMing’,‘XiaoHong’,‘XiaoWang’],
‘Grade’:[100,90,20],
‘Class’:[‘RG1’,‘RG2’,‘RG3’]}
创建一个Series对象
s1 = pd.Series(data[‘Student’], index = [‘first’,‘second’,‘three’], name = ‘GDUF’)
创建一个DataFrame对象
df1 = pd.DataFrame(data)
DataFrame和Series的转化
d = {‘one’: Series([1., 2., 3.], index=[‘a’, ‘b’, ‘c’]), ‘two’: Series([1., 2., 3., 4.], index=[‘a’, ‘b’, ‘c’, ‘d’])}
df = DataFrame(d)
df
one two
a 1.0 1.0
b 2.0 2.0
c 3.0 3.0
d NaN 4.0

读取文件和写入
文件读取时,加上列名names=[]
df_example = pd.read_csv('Pandas_example_read.csv', names=['A', 'B','C'])
CSV
HDF 
   #hdf文件:一个文件存储多个数据
	#1,先要开启HDFStore的io流
	#2,写入key-value键值对
	#3,关闭流
	#读取数据必须要提供一个key
缺失值处理
1.删除:
# 不修改原数据
movie.dropna()
# 可以定义新的变量接受或者用原来的变量名
movie = movie.dropna()
2.替换
# 替换存在缺失值的样本的两列
# 替换填充平均值,中位数
movie['Revenue (Millions)'].fillna(movie['Revenue (Millions)'].mean(), inplace=True)
movie['Metascore'].fillna(movie['Metascore'].mean(), inplace=True)
3.特殊标记
# 把一些其它值标记的缺失值,替换成np.nan
wis = wis.replace(to_replace='?', value=np.nan)
再按nan值处理
数据合并
concat(axies)
merge(列)
交叉表和透视表(Hbase):描述两列之间的关系
交叉表用于计算一列数据对于另外一列数据的分组个数(寻找两个列之间的关系)
pd.crosstab(value1, value2)
DataFrame.pivot_table([], index=[])
方法1:设置索引
tmp_df.index=df["timeStamp"]
#将普通的Index索引改为DatetimeIndex
tmp_df.index = pd.to_datetime(tmp_df.index)
#重采样后,需要统计数据
tmp_df1 = tmp_df.resample("M").sum()
方法2:
#将数据变为列名为不重复的类名,每一行如果在某一列有数据置为1,否则置为0
#哑变量矩阵
dummies = pd.get_dummies(tmp_df)
dummies = dummies.set_index(pd.to_datetime(df["timeStamp"]))
dummies.resample("M").sum().plot(figsize=(20,8))

Matplotlib,Numpy,Pandas综合练习???
(1)获取电影数据中评分的平均分,导演的人数等信息
df[“Rating”].mean()
np.unique(df[“Director”]).shape[0]
(2)对于这一组电影数据,如果我们想看Rating,Runtime (Minutes)的分布情况,应该如何呈现数据?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值