import pandas as pd #加载数据 def read_data(file_root): dataframe=pd.read_csv(file_root) print("数据的基本信息:") print(dataframe.info()) print("数据的行是%i,列是%i"%(dataframe.shape[0],dataframe.shape[1])) print("数据预览:") print(dataframe.head()) return dataframe #处理缺失数据 def processing_missing_data(dataframe): if dataframe.isnull().values.any(): dataframe=dataframe.dropna() return dataframe #分析票房数据 def analyze_data(dataframe,groupby_attribution): grouped_data=dataframe.groupby(groupby_attribution,as_index=False)["gross"].sum() sorted_grouped_data=grouped_data.sort_values(by="gross",ascending=False) sorted_grouped_data.to_csv("H:/pythonfigure/gross.csv",index=None) #重新构造电影类型 def reget_data(dataframe): df_genres=pd.DataFrame(columns=["genre","budget","gross","year"]) for i, row in dataframe.iterrows(): if i%100==0: print("共%i记录,已处理%i"%(dataframe.shape[0],i)) genres=row["genres"].split("|") num_genres=len(genres) dict={} dict["budget"]=[row["budget"]]*num_genres dict["gross"]=[row["gross"]]*num_genres dict["year"] = [row["title_year"]] * num_genres dict["genre"]=genres df_genres=df_genres.append(pd.DataFrame(dict)) df_genres.to_csv("H:/pythonfigure/movie_metad.csv") return df_genres #加载数据 dataframe=read_data("H:/pythonfigure/movie_metadata.csv") #处理缺失数据 dataf=processing_missing_data(dataframe) #重新构造电影类型 t=reget_data(dataf) print(t)