Python分析101位《創造營2020》小姐姐,誰是你心中的顏值擔當?

2020-12-23 CDA數據分析師

最近可以追的綜藝真是太多了,特別是女團選秀節目。之前我們剛聊過《青春有你2》,現在隔壁鵝廠的《創造營2020》又火熱開播了。除了數不清的漂亮小姐姐,導師團除了黃子韜、鹿晗,最新一期中吳亦凡更是作為特約教練登場,「歸國三子」一下子就引爆了話題度。

01、《創造營2020》到底好看嗎?

那麼《創造營2020》到底好看嗎?先讓我們看到豆瓣,目前已經有25129人打分,分數為6.6分。

對比起隔壁的《青你2》5.2分,創造營還略勝一籌,不過剛更新3期,還可以在觀望一下。

總體評分分布

具體看到總體評分分布,其中11.8%的人給了5星,19.6%的人給了4星,其中打1星的最多佔到39.8%。

其中給出1分2分算評分較差的,4分5分算比較好的推薦分數。我們分布看到這兩部分評分的詞雲圖。

在評分較低的觀眾看來,主要的吐槽點有關於"賽制"、"導師"、"剪輯"方面。直接表達"不好看"、"勸退"、"吊打"的評論也有不少。

在給出分數較高,推薦的觀眾看來,《創造營2020》的亮點在於"選手小姐姐"、"導師陣容"、"話題"。鵝廠的"財大氣粗"、"燃燒的經費"也令人印象深刻。其次也有認為比《青你2》要更好看的。

02、教你用Python分析101位選手小姐姐

之前看到 菜鳥學Python 寫了一篇「我用Python分析了《青春有你2》109位漂亮小姐姐,真香!」這次C君也受到了點啟發,打算也用Python來盤一盤《創造營2020》的小姐姐們。

下面讓我們來通過Python為大家介紹一下這101位美麗的小姐姐吧。

數據獲取數據預處理:數據合併和欄位提取數據可視化分析

1、數據獲取

此次我們主要獲取了以下部分的數據:

從騰訊的官方助力網站,來獲取選手的姓名和照片信息從維基百科獲取選手的籍貫、年齡、身高、所在經濟公司信息調用百度智能雲的AI人臉識別接口,輸入選手照片,獲取選手顏值等信息。

下面看到具體步驟和部分關鍵代碼:

獲取騰訊撐腰榜數據

我們獲取數據的頁面地址如下:

https://m.v.qq.com/activity/h5/303_index/index.html?ovscroll=0&autoplay=1&actityId=107015

這是一個動態js加載的網站,使用chrome瀏覽器簡單的抓包分析,得到真實的數據傳輸接口,通過修改其中的pageSize參數即可得到所有的數據。

代碼如下:

# 導入庫import pandas as pdimport requestsimport jsondef get_tx_actors(): """ 功能:獲取創造營2020撐腰榜數據。 """ # 獲取URL url = 'https://zbaccess.video.qq.com/fcgi/getVoteActityRankList?raw=1&vappid=51902973&vsecret=14816bd3d3bb7c03d6fd123b47541a77d0c7ff859fb85f21&actityId=107015&pageSize=101&vplatform=3&listFlag=0&pageContext=&ver=1&_t=1589598410618&_=1589598410619' # 添加headers headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36' } # 發起請求 response = requests.get(url, headers=headers) # 解析數據 json_data = json.loads(response.text) # 提取選手信息 player_infos = json_data['data']['itemList'] # 提取詳細信息 names = [i['itemInfo'].get('name') for i in player_infos] rank_num = [i['rankInfo'].get('rank') for i in player_infos] images = [i['itemInfo']['mapData'].get('poster_pic') for i in player_infos] # 保存信息 df = pd.DataFrame({ 'names': names, 'rank_num': rank_num, 'images': images }) return df

通過以上程序,獲取到101位選手的姓名、排名和照片信息,並將選手的照片保存到本地。獲取數據如下所示:

df1.head()

獲取維基百科數據

此處使用selenium獲取,需要電腦可以登錄外網,代碼較為簡單,暫時省略。

這裡主要獲取了選手的籍貫、年齡、身高、所在經濟公司信息,如下所示:

df2.head()

調用百度AI接口獲取顏值數據

百度AI人臉詳細的識別文檔地址如下:

https://ai.baidu.com/ai-doc/FACE/yk37c1u4t

首先需要在官網申請個人的token信息,然後下面的程序中,get_face_score函數首先構造請求URL,然後構造請求的params表單數據,包括base64編碼的圖片信息,圖片類型和想要獲取的人臉信息。通過POST方法獲取返回的json數據,返回的json數據裡就包含著我們需要的顏值得分和年齡估計等信息,具體代碼如下:

def get_file_content(file_path): """ 功能:使用base64轉換路徑編碼 """ with open(file_path, 'rb') as fp: content = base64.b64encode(fp.read()) return content.decode('utf-8')def get_face_score(file_path): """ 功能:調用api,實現一個百度的顏值分析器 """ # 調用函數,獲取image_code image_code = get_file_content(file_path=file_path) # 請求base_url request_url = "https://aip.baidubce.com/rest/2.0/face/v3/detect" # 表單數據 params = { 'image':'{}'.format(image_code), 'image_type': 'BASE64', 'face_field': 'age,gender,beauty' } # 調用函數,獲取token my_access_token = "官網獲取的個人的token信息" # 獲取access_token access_token = my_access_token # 構建請求URL request_url = request_url + "?access_token=" + access_token # 請求頭 headers = {'content-type': 'json'} # 發起請求 response = requests.post(request_url, data=params, headers=headers) if response: print(response.json()) age = response.json()['result']['face_list'][0]['age'] gender = response.json()['result']['face_list'][0]['gender']['type'] gender_prob = response.json()['result']['face_list'][0]['gender']['probability'] beauty = response.json()['result']['face_list'][0]['beauty'] all_results = [age, gender, gender_prob, beauty] return all_results

通過以上程序,獲取到101位選手通過百度AI預測的年齡、性別、性別預測概率、顏值等信息。

df3.head()

2、數據預處理

此處我們主要對以上獲取的數據集進行整理和清洗,清洗後的數據如下所示:

df.head()

3、數據可視化

獲取和整理數據之後,接下來我們使用數據可視化庫pyecharts進行以下的數據可視化分析。

選手的年齡分布

首先在年齡上,選手最小年齡是18歲,最大年齡是25歲。我們對年齡進行了分箱,具體分析發現20-22歲的選手最多,佔比達到35.87%。其次是22-24歲,佔比29.35%,緊隨其後是18-20歲,佔比28.26%。最後是24-26歲,僅佔比6.52%。看來想要出道真的需要趁早啊!

代碼如下:

# 分箱age_bins = [18,20,22,24,26] age_labels = ['18-20', '20-22', '22-24', '24-26']age_cut = pd.cut(df.age, bins=age_bins, labels=age_labels)age_cut = age_cut.value_counts()# 產生數據對data_pair = [list(z) for z in zip(age_cut.index.tolist(), age_cut.values.tolist())]# 繪製餅圖# {a}(系列名稱),{b}(數據項名稱),{c}(數值), {d}(百分比)pie1 = Pie(init_opts=opts.InitOpts(width='1350px', height='750px'))pie1.add('', data_pair=data_pair, radius=['35%', '60%'])pie1.set_global_opts(title_opts=opts.TitleOpts(title='選手年齡分布'), legend_opts=opts.LegendOpts(orient='vertical', pos_top='15%', pos_left='2%'))pie1.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}:{d}%"))pie1.render()

選手的真實年齡和百度AI預測對比

我們將百度AI預測的年齡和真實年齡進行了對比,可以看出模型預測的方差較小,由計算可知平均預測的絕對誤差在1.67歲,預測結果還是比較準確的。

代碼如下:

# 產生數據x1_line2 = df.names.values.tolist()y1_line2 = df.age.values.tolist()y2_line2 = df.pred_age.values.tolist()# 繪製折線圖line2 = Line(init_opts=opts.InitOpts(width='1350px', height='750px'))line2.add_xaxis(x1_line2)line2.add_yaxis('真實年齡', y1_line2)line2.add_yaxis('預測年齡', y2_line2) line2.set_global_opts(title_opts=opts.TitleOpts('選手的真實年齡和百度AI預測對比'), xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate='30')), yaxis_opts=opts.AxisOpts(min_=15, max_=30), ) line2.set_series_opts(label_opts=opts.LabelOpts(is_show=False))line2.render()

選手的身高分布

通過上圖可以看出,選手的身高基本符合正態分布。身高方面小姐姐們都在160以上,最高的是175cm,令人意外的是身高167cm的最多,共有34名。看來女團對身高的要求還挺高的。

選手籍貫分布

那麼小姐姐們都來自哪些地區呢?

這裡我們只是關注了國內的情況,馬來西亞和俄羅斯等其他國家,並不在我們的統計範圍內。經過分析整理可以發現,來自四川的人數是最多的,看來四川當之無愧是個盛產美女之地,然後是廣東和湖南。

代碼如下:

city_num = df.region.value_counts()# 數據對data_pair2 = [list(z) for z in zip(city_num.index.tolist(), city_num.values.tolist())]# 繪製地圖map1 = Map(init_opts=opts.InitOpts(width='1350px', height='750px'))map1.add('', data_pair2, maptype='china')map1.set_global_opts(title_opts=opts.TitleOpts(title='選手的籍貫分布'), visualmap_opts=opts.VisualMapOpts(max_=9))map1.render()

選手所在經濟公司分布

同時再看到選手的經濟公司。可以看到,其中絲芭傳媒推出的選手人數位居第一,最多共有7人,絲芭傳媒是中國大型女子偶像團體SNH48的運營公司,值得注意的是它在青春有你2中選送的選手數量也是最多的。

代碼如下:

company_num = df.company.value_counts(ascending=False) # 柱形圖bar1 = Bar(init_opts=opts.InitOpts(width='1350px', height='750px'))bar1.add_xaxis(company_num.index.tolist())bar1.add_yaxis('', company_num.values.tolist())bar1.set_global_opts(title_opts=opts.TitleOpts(title='選手所在經濟公司分布'), visualmap_opts=opts.VisualMapOpts(max_=7), xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate='60')), )bar1.render()

選手的顏值分布

最後再看到大家最最的顏值問題啦,這次我們還調用百度智能雲的AI人臉識別接口,輸入選手照片,獲取選手顏值等信息。

通過AI接口,可以看到由百度AI預測的顏值最低為57分,最高為89分,我們對顏值進行了分箱操作,其中55-60對應低,60-70對應中,70-80對應較高,80以上對應高。可以計算,較高和高佔比76%,小姐姐們的顏值都是非常高的。

其中百度AI預測顏值最高的小姐姐是誰呢?她就是崔文美秀,很靈動清秀的一位小姐姐呢。

誰是你心中《創造營2020》中的顏值擔當呢?我們也製作成了視頻版,有興趣的朋友可以關注我們發布的視頻哦!

相關焦點

  • 創造營2020顏值擔當:nene鄭乃馨、劉些寧、姜貞羽、孫珍妮
    今年迷上了女團節目,追完青春有你2,繼續來追創造營2020,大家都說創造營2020的妹紙顏值不如青春有你2,不過我覺得創造營2020還是有很多顏值ok噠,下面挑出創造營2020的顏值擔當~劉些寧作為創造營2020的舞擔,劉些寧的顏值是很抗打的,包括在路演的照片中,我們可以看到劉些寧的顏值還是ok地,離開了鵝的濾鏡,很多人其實都有些「原形畢露」,但是劉姐還是幾乎無差別,是妥妥的女團顏值擔當了。
  • 《創造營2020》出道名單,第一次公演就被鎖死?誰是你心中的C位
    《青春有你2》收官後,《創造營2020》火熱綻放。看選秀節目,無不是為了吃瓜。不管是出道位還是熱度,選手之間的爭議讓吃瓜群眾,樂此不彼。而觀眾預測的成團名單隨著節目的播出,一變再變。《創造營2020》出道名單會有哪些變化?其實我們不妨再回看一往期節目,答案可能就在裡面?
  • 《創造營2020》發布練習生名單,三位《創造101》的學員赫然在列
    《創造營2020》也發布了自己的練習生名單,看著一大串的頭像和名字,說實話多少有些眼花了。但在這些練習生當中,還是看到了一些熟悉的面孔,而且還是《創造101》的學員。第一位林君怡,林君怡應該算是《創造101》中被淘汰最可惜的練習生了。
  • 創造營2020C位是誰 創造營2020哪些選手有可能成為初C
    從目前的路透來看,相比《青春有你2》而言,《創造營2020》的選手陣容更加素人和年輕化,參加節目前有粉絲基礎的選手很少,這也能夠保證節目播出時的新鮮感。  不過,過多的素人選手參與,也使得節目的流量和熱度遜色於《青春有你2》,從目前的信息來看,爭奪主題曲C位的熱門主要就是劉些寧和趙粵。
  • 《創造營2020》想要接下火箭少女101的大旗,目前看來前路艱難
    後有《乘風破浪的姐姐》搶流量,姐姐們最近可說是話題滿滿,未來出道的5人團到底什麼樣誰也說不好,畢竟這也是第一個吃瓜的人,但對打的姐姐們可不是好惹的。《創造營2020》在這個節點,不僅前期被《青春有你2》總決賽搶佔先機,又被滿滿話題的姐姐們分流製造話題。
  • 《創造營2020》收官在即,哪個小姐姐最可能C位出道?
    本周六,《創造營2020》就要迎來成團夜了,《創造營2020》官博剛剛宣布,成團夜將由何炅擔任主持人,上海彩虹室內合唱團、李雲迪、薇婭擔任成團見證人。 首期節目中,鹿晗和黃子韜同臺跳舞以及兩人暖心的互動就引來不少網友的關注;隨後,「創造101」孟美岐和「創造營2019」周震南「雙C」同臺助陣學員,也帶來了炸裂的表演和高熱的話題;接下來的「飛行導師」吳亦凡,更是實現了「牛鹿桃」的世紀同臺,成為節目開播後的一個勁爆噱頭
  • 【創造營-ROCO】票選出你心中的寵物吧!
    創造營-ROCO 最近我鵝廠的《創造營2020》正在騰訊視頻獨家播出,不知道有沒有小夥伴關注到~你們票選了那幾位小姐姐呢! sEan從《創造101》一直到《創造營2020》一路追《創》系列,特別喜歡那種為夢想出發,為之努力的精神,今年從101回來復讀的兩位plmm:林君怡和蘇芮琪更是勇氣可嘉,而且實力不容小覷,就是票數不高,真心的希望努力且有實力的人可以高位出道!
  • 《創造營2020》最新首發位中的舒一靈是誰?曾踢館《創造101》!
    經過了主題曲的考核之後,《創造營2020》的成團首發位又有了新的變化。多了兩張新面孔,曾雪瑤和舒一靈,重點說一下舒一靈。有人可能要問了,為什麼要重點說舒一靈呢?因為從某種角度來說,舒一靈跟林君怡一樣是復讀生。
  • 從資本角度理性分析創造營2020出道位
    《創造營2020》每周兩期,已經播到了第四期,誰是「皇族」誰是「鵝選」也都已經初露端倪。作為一名平平無奇的沒有OP的觀眾,站在各家資本角度理性分析預測最終出道位。 C位可能性很小,男女團選秀向來都是舞蹈擔當佔C位,雖然希林的舞蹈也可,但是本屆太多鵝選和皇了,C位不好佔。
  • 《創造101》裡那些長相甜美,唱歌好聽的小姐姐,你最喜歡誰呢?
    最近《創造101》刷爆了朋友圈,隨處可見的投票窗口,小編也特別喜歡這檔綜藝節目裡的小姐姐,她們漂亮又可愛,今天小編就帶著大家來看一下這些漂亮的小姐姐吧。孟美岐是《創造101》裡的顏值擔當,這個小姐姐也在這次決賽中脫穎而出,成功C位出道。
  • 火箭少女101女團位置不保,被創造營2020首發成團隊完虐
    《創造101》出來的時候,我們喜歡的山支大哥孟美岐,舞技一枝獨秀,無人可敵。唯一可以和她爭一爭c位的吳宣儀,還是個富婆,心態比較佛系,沒那麼大的事業心。第三名楊超越則完全是個流量擔當,不會唱歌不會舞,硬是憑著超強的人氣出道了。
  • 《創造營2020》選手顏值吊打《青春有你》?
    前段時間我們寫了《青春有你2》的前瞻,(指路《青春有你2》官宣了,你的臉盲症犯了嗎?)這周節目播出了,結果還挺讓人意外的。又嗲又作的華策小公主虞書欣拿了C位,許佳琪、陳珏、上官喜愛排在第2-4名。講真,前9出道位的實力,都很一般。
  • 《創造營2020》線上官宣,101位女孩集結為夢想出發
    《創造營2020》線上官宣,101位女孩集結為夢想出發。今日下午17:30騰訊大型女團養成節目《創造營2020》 在線上舉行發布會的直播,由《創造營》監製邱越、總導演孫莉、教練團與101位女孩亮相發布會。《創造營》歷時三年,培養了火箭少女、RISE優質全民團體。
  • 創造營2020:被《創造101》淘汰的林君怡或為c位,難道有黑幕?
    「被節目淘汰的人都能成為c位,這是鬧呢」、「真的假的,這也太嚇人了吧」、「唉,這種綜藝節目肯定有黑幕」、「肯定是花錢了唄,就是不知道在舞臺上的表現能不能使觀眾信服呢」......當《創造營2020》曝出初C人選是林君怡的時候,網上出現了以上的質疑聲。
  • 《創造營2020》:全是高顏值美少女的女團
    不過它的競爭對手騰訊怎麼能放過這麼好機會,馬上推出了《創造2020》,針對愛奇藝選秀綜藝節目做了很大的改進,回歸選秀本身比賽。 於是《創造營2020》首期播出後,看到的都是真材食藝的表演,選手的真實力比拼,沒有比賽以外的熱點,更多關注的是選手比賽現場。
  • 創造營2020出道位預測,有你pick的小姐姐嗎?
    我之前在b站曾經看過一個up主說,創造營2020和青春有你2對新浪微博的依賴程度不同,所以導致了很多人以為創造營2020涼了。作為一個多年秀粉,平心而論,兩檔節目各有優勢,也存在一些問題。這兩點呢,小編在之前的推文裡有詳細說過,感興趣的小夥伴可以去看一下以前的記錄。那麼問題來了,看了這麼久的創造營2020,小編心裡的7個人是誰呢?接下來我給大家分析一下。1、希林娜依高五字妹妹的實力毋庸置疑,她是粉絲、路人、導師、選手都認可的一名選手。
  • 《創造101》到底誰才是顏值擔當?來說說你心目中的顏值top吧
    最近特別火的《創造101》相信很多人都再看吧。都說每個女孩都是一本書,那這101本書,你喜歡哪本呢?小編我是個顏狗,就喜歡看漂亮妹妹。那到底誰是101女孩的顏值擔當呢!1、山支大哥–孟美岐大哥屬於那種比較洋氣的,比較韓範的女生。
  • 101學員參加《創造營2020》,待遇有差距,只有她進入了A班
    參賽的練習生,都各有自己的實力,在圈內也小有名氣,參加這些選秀節目,也是想著自己能夠得到更好的發展,所以許佳琪、趙粵、虞書欣、孔雪兒等人,才會再次出發,選擇了這些選秀節目,《青春有你2》正熱播中,很多熟悉的練習生,都因為沒有鏡頭,第一輪比賽就離開了,不知道備受期待的《創造營2020》,會在鏡頭上如何分配,會讓我們看到有實力的練習生嗎,今天就來說,101女孩參加《創造營2020》,待遇有差距,只有她進入了
  • 創造營2020崔文美秀是誰 創3崔文美秀個人資料介紹
    在《青春有你2》即將開啟109進60的第一輪淘汰賽時,姍姍來遲的《創造營2020》終於在8日官宣學員。101位練習生正式入住夢幻城堡,果然是"富養女兒",隨即學員的制服公式照也一一曝光!據了解,這次嘉興新悅將會有五位練習生,讓我們來看一下吧!
  • 《創造營2020》出道位預測
    今年的《創造營》絲毫沒有讓觀眾失望,選手水平實高,從開播前的高人氣選手,再到開播後令觀眾驚喜的「黑馬」,每一期的舞臺都看得觀眾很爽,不少選手的實力已經被我們所看到,小編在這裡預測七位出道位選手(實際上就是小編pick的7位)希林娜依·高她的嗓音我是愛了,煙嗓配上點小慵懶,屬於「開口跪」系列,從初舞臺個人戰中的《Someone You Loved》,到交換歌曲