X数码驿站
新浪微博
微信
当前位置:X数码驿站网 » 财经

python3 视频网站数据清洗整理和结论研究

  1. import pandas as pd

  2. import matplotlib.pyplot as plt

  3. %matplotlib inline


  4. data1=pd.read_csv(r"C:\Users\renping\Documents\【非常重要】Python数据分析师微专业_项目资料\项目04视频网站数据清洗整理和结论研究\爱奇艺视频数据.csv",engine='python')

  5. data1.head(2)

  1. #自定义函数,去除缺失值

  2. def data_cleaning(df):

  3.    cols=df.columns

  4.    for col in cols:

  5.        if df[col].dtype=="object":

  6.            df[col].fillna("缺失数据",inplace=True)

  7.        else:

  8.            df[col].fillna(0,inplace=True)

  9.    return df

  10. data_cleaning(data1).head(2)

  11. #自定义函数,将字段类型改为DatetimeIndex格式

  12. def data_time(df,*cols):

  13.    for col in cols:

  14.        df[col] = pd.to_datetime(df[col],format="%Y年%m月%d日")

  15.    return df

  16. # 该函数将输入列名的列,改为DatetimeIndex格式

  17. data_time(data1,"数据获取日期").head(2)

  1. #问题1 计算不同导演的好评率,并生成条形图

  2. data_q1=data1.groupby("导演")["评分人数","好评数"].sum()

  3. data_q1

  4. data_q1["好评率"]=(data_q1["好评数"]/data_q1["评分人数"])

  5. result_q1=data_q1.sort_values("好评率",ascending=False).iloc[:20]

  6. plt.rcParams["font.family"]="simhei"

  7. result_q1['好评率'].plot(kind='bar',

  8.       color = 'green',

  9.       width = 0.8,

  10.       alpha = 0.5,

  11.       rot = 90,

  12.       grid = True,

  13.       ylim = [0.98,1],

  14.       figsize = (12,4),

  15.       title = '不同导演电影的好评率')