无锡市政建设集团网站,如何撤销网站上信息,网站建设知识库,房地产销售新手入门知识一、需求
1、现在我们有一组从2006年到2016年1000部最流行的电影数据 数据来源#xff1a;https://www.kaggle.com/damianpanek/sunday-eda/data
2、问题1 想知道这些电影数据中评分的平均分#xff0c;导演的人数等信息#xff0c;我们应该怎么获取#xff1f;
3、问题…一、需求
1、现在我们有一组从2006年到2016年1000部最流行的电影数据 数据来源https://www.kaggle.com/damianpanek/sunday-eda/data
2、问题1 想知道这些电影数据中评分的平均分导演的人数等信息我们应该怎么获取
3、问题2 对于这一组电影数据如果我们想看Rating、Runtime (Minutes)的分布情况应该如何呈现数据
4、问题3 对于这一组电影数据如果我们希望统计电影分类genre的情况应该如何处理数据
二、实现
1、问题1
# 综合案例
movie pd.read_csv(./IMDB-Movie-Data.csv)movie# 想知道这些电影数据中评分的平均分导演的人数等信息我们应该怎么获取
# 评分的平均分
movie[Rating].mean()# 导演的人数信息
np.unique(movie[Director]).size 2、问题2
# 对于这一组电影数据如果我们想看Rating、Runtime (Minutes)的分布情况应该如何呈现数据
import matplotlib.pyplot as plt# 创建画布
plt.figure(figsize(20,8), dpi100)# 绘制直方图
plt.hist(movie[Rating], 20)# 修改刻度
max_ movie[Rating].max()
min_ movie[Rating].min()
plt.xticks(np.linspace(max_, min_, num21))# 添加网格
plt.grid(linestyle--, alpha0.8)# 显示图像
plt.show() 3、问题3 思路分析 1创建一个temp_df全为0的dataframe列索引值为电影的分类 2遍历每一部电影temp_df中把分类出现的列的值置为1 3求和
# 对于这一组电影数据如果我们希望统计电影分类genre的情况应该如何处理数据
# 先统计电影类别都有哪些
movie_genre [i.split(,) for i in movie[Genre]]movie_genre# 拆分
movie_class np.unique([j for i in movie_genre for j in i])movie_class# 统计每个电影有几个类别
count pd.DataFrame(np.zeros(shape[1000, 20], dtypeint32), columnsmovie_class)countfor i in range(1000):count.loc[i, movie_genre[i]] 1countcount.sum(axis0).sort_values(ascendingFalse).plot(kindbar, figsize(20, 8), fontsize20, colormapcool) 三、小结 pandas高级数据处理 缺失值处理 缺失值是NaN类型 判断是否存在np.nan缺失值 pd.isnull(df).any() pd.notnull(df).all() 两种思路 删除df.dropna() 替换sr.fillna(value, replace) 缺失值是其他默认符号 替换df.replace(to_replace?, valuenp.nan) 按照处理nan的步骤 数据离散化 分组 自动分组pd.qcut(data, bins) 自定义分组pd.cut(data, bins) 转换 pd.get_dummies(分好组的数据, prefix) 数据合并 按方向合并 pd.concat((a,b), axis) 按索引合并 pd.merge(left, right, howinner, on) 交叉表与透视表 pd.crosstab(value1, value2) df.pivot_table([字段], index) 分组与聚合 用dataframe.groupby(by).聚合函数() 用sr.groupby(sr).聚合函数()