91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 12.07MB
    文件類型: .rar
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2023-06-30
  • 語言: 其他
  • 標(biāo)簽: kaggle??movie??

資源簡介

TMDB電影數(shù)據(jù)分析,包括Kaggle上的原始數(shù)據(jù)集,以及代碼,實現(xiàn)電影類型和票房,利潤等的關(guān)系,對比兩個公司的電影類型收入,拍攝集中年份,畫出餅圖,條形圖,折線圖,并進(jìn)行關(guān)鍵詞的提取,做出詞云圖。

資源截圖

代碼片段和文件信息

import?pandas?as?pd
import?numpy?as?np
import?json
#可視化包
import?matplotlib.pyplot?as?plt
import?matplotlib
#加載詞云圖
from?wordcloud?import?WordCloud
#更改字體
plt.rcParams[‘font.sans-serif‘]?=?[‘SimHei‘]

#讀取演員列表信息和電影列表信息數(shù)據(jù)
credits?=?pd.read_csv(‘tmdb_5000_credits.csv‘encoding=‘utf-8‘)
movies?=?pd.read_csv(‘tmdb_5000_movies.csv‘encoding=‘utf-8‘)

json_cols?=?[‘cast‘‘crew‘]
#json
#編碼:把python對象編碼轉(zhuǎn)換json字符串???json.dumps
#解碼:把json字符串轉(zhuǎn)換成python對象???json.loads
for?i?in?json_cols:
????credits[i]?=?credits[i].apply(json.loads)
#用json方法匯總所有類型
def?get_name(x):
????return?‘‘.join([i[‘name‘]?for?i?in?x])

#?cast?提取演員

credits[‘cast‘]?=?credits[‘cast‘].apply(get_name)
#?crew?提取導(dǎo)演
def?director(x):
????for?i?in?x:
????????if?i[‘job‘]?==‘Director‘:
????????????return?i[‘name‘]
credits[‘crew‘]?=?credits[‘crew‘].apply(director)
#?print(credits.head())

#將‘crew‘轉(zhuǎn)換為’directo‘
credits.rename(columns?=?{‘crew‘:‘director‘}inplace=True)
#?print(credits.head())

#movies?解析
json_colss?=?[‘genres‘‘keywords‘‘spoken_languages‘‘production_countries‘‘production_companies‘]
for?i?in?json_colss:
????movies[i]=movies[i].apply(json.loads)

def?get_names(x):
????return?‘‘.join([i[‘name‘]?for?i?in?x])

movies[‘genres‘]=movies[‘genres‘].apply(get_names)
movies[‘keywords‘]=movies[‘keywords‘].apply(get_names)
movies[‘spoken_languages‘]=movies[‘spoken_languages‘].apply(get_names)
movies[‘production_countries‘]=movies[‘production_countries‘].apply(get_names)
movies[‘production_companies‘]=movies[‘production_companies‘].apply(get_names)

#?print((credits[‘title‘]==movies[‘title‘]).describe())

del?movies[‘title‘]
#合并兩張表
df?=?credits.merge(right=movieshow=‘inner‘left_on=‘movie_id‘right_on=‘id‘)
#?print(df.head())
del?df[‘id‘]
del?df[‘homepage‘]
del?df[‘original_title‘]
del?df[‘tagline‘]
df[‘release_date‘]=df[‘release_date‘].fillna(‘2014-06-01‘)#填充缺失值
df[‘runtime‘]=df[‘runtime‘].fillna(df.runtime.mean())#填充平均值
df[df[[‘release_date‘‘runtime‘]].isnull().values==True]
#獲取電影類型
df[‘genres‘][1].split(‘‘)

genre?=?set()#建立一個集合,會去重
for?i?in?df[‘genres‘].str.split(‘‘):
????genre?=?set().union(igenre)

genre?=?list(genre)
genre.remove(‘‘)
#?print?(genre)

#轉(zhuǎn)化日期格式
df[‘release_year‘]?=?pd.to_datetime(df.release_date?format=?‘%Y-%m-%d‘).dt.year
df[‘release_month‘]?=?pd.to_datetime(df.release_date?format=‘%Y-%m-%d‘).dt.month
#判斷每部電影屬于什么類型,返回1
for?genr?in?genre:
????df[genr]?=?df[‘genres‘].str.contains(genr).apply(lambda?x:1?if?x?else?0)
????????#str.contains?字符串包含

df_gy?=?df.loc[:genre]
#?print(df_gy)

#建立包含電影類型和年份的數(shù)據(jù)框
#?print(df_gy.index)
df_gy.index?=?df[‘release_year‘]
#?print(df_gy.head())
#?df_gy.groupby(‘release_year‘).count().Adventure.plot(figsize=(126))
#?plt.xticks(range(191520185))
#?plt.title(‘電影數(shù)量的年度趨勢圖‘?fontsize?=?20)
#?plt.xlabel(‘年份‘fontsize?=?20)
#?plt.ylabel(‘?dāng)?shù)量‘fontsize?=?20)
#?plt.show()

df_gy1?=?df_gy.sort_index(ascending=?False)#sort_index?索引排序,默認(rèn)升序False?為降序。
#?pri

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????8010??2018-12-20?10:58??kaggle電影分析\test.py

?????文件???40044293??2017-09-28?09:09??kaggle電影分析\tmdb_5000_credits.csv

?????文件????5698602??2017-09-28?09:09??kaggle電影分析\tmdb_5000_movies.csv

?????目錄??????????0??2018-12-20?11:02??kaggle電影分析

?????文件???????8010??2018-12-20?10:58??TMDB電影數(shù)據(jù)分析\test.py

?????文件???40044293??2017-09-28?09:09??TMDB電影數(shù)據(jù)分析\tmdb_5000_credits.csv

?????文件????5698602??2017-09-28?09:09??TMDB電影數(shù)據(jù)分析\tmdb_5000_movies.csv

?????目錄??????????0??2018-12-20?11:02??TMDB電影數(shù)據(jù)分析

-----------?---------??----------?-----??----

?????????????91501810????????????????????8


評論

共有 條評論