亚洲视频精品_木耳av在线_成年人免费看_久久精品香蕉_激情国产精品_亚洲第一se情网站

您現在所在的位置:首頁 >關于奇酷 > 行業動態 > 手把手教你用Python爬中國電影票房數據

手把手教你用Python爬中國電影票房數據

來源:奇酷教育 發表于:

和很多同學接觸過程中,我發現自學Python數據分析的一個難點是資料繁多,過于復雜。大部分網上的資料總是從Python語法教起,夾雜著大量Pyth

和很多同學接觸過程中,我發現自學Python數據分析的一個難點是資料繁多,過于復雜。大部分網上的資料總是從Python語法教起,夾雜著大量Python開發的知識點,花了很多時間卻始終云里霧里,不知道哪些知識才是真正有用的。

 

本來以為上手就能寫爬蟲出圖,卻在看基礎的過程中消耗了一周又一周,以至于很多勵志學習Python的小伙伴犧牲在了入門的前一步。

 

 

于是,我總結了以下一篇干貨,來幫助大家理清思路,提高學習效率??偣卜譃槿蟛糠郑鹤鯬ython數據分析必知的語法,如何實現爬蟲,怎么做數據分析。

 

 

1.必須知道的兩組Python基礎術語

 

 

A.變量和賦值

 

Python可以直接定義變量名字并進行賦值的,例如我們寫出a = 4時,Python解釋器干了兩件事情:

 

  • 在內存中創建了一個值為4的整型數據
  • 在內存中創建了一個名為a的變量,并把它指向4
  • 用一張示意圖表示Python變量和賦值的重點

例如下圖代碼,“=”的作用就是賦值,同時Python會自動識別數據類型:

請閱讀代碼塊里的代碼和注釋,你會發現Python是及其易讀易懂的。請閱讀代碼塊里的代碼和注釋,你會發現Python是及其易讀易懂的。

 

B.數據類型

 

在初級的數據分析過程中,有三種數據類型是很常見的:

  • 列表list(Python內置)
  • 字典dict(Python內置)
  • DataFrame(工具包pandas下的數據類型,需要import pandas才能調用)

 

它們分別是這么寫的:

 

列表(list):

??

list是一種有序的集合,里面的元素可以是之前提到的任何一種數據格式和數據類型(整型、浮點、列表……),并可以隨時指定順序添加其中的元素,其形式是:

 

字典(dict):

??

字典使用鍵-值(key-value)存儲,無序,具有極快的查找速度。以上面的字典為例,想要快速知道周杰倫的年齡,就可以這么寫:

?

dict內部存放的順序和key放入的順序是沒有關系的,也就是說,"章澤天"并非是在"劉強東"的后面。

 

DataFrame:

DataFrame可以簡單理解為Excel里的表格格式。導入pandas包后,字典和列表都可以轉化為DataFrame,以上面的字典為例,轉化為DataFrame是這樣的:

和excel一樣,DataFrame的任何一列或任何一行都可以單獨選出進行分析。

 

以上三種數據類型是python數據分析中用的最多的類型,基礎語法到此結束,接下來就可以著手寫一些函數計算數據了。

 

 

 

2.從Python爬蟲學循環函數

 

 

掌握了以上基本語法概念,我們就足以開始學習一些有趣的函數。我們以爬蟲中繞不開的遍歷url為例,講講大家最難理解的循環函數for的用法:

 

A.for函數

 

for函數是一個常見的循環函數,先從簡單代碼理解for函數的用途:

?

因為dict的存儲不是按照list的方式順序排列,所以,迭代出的結果順序很可能不是每次都一樣。默認情況下,dict迭代的是key。如果要迭代value,可以用for value in d.values(),如果要同時#迭代key和value,可以用for k, v in d.items()

 

可以看到,字典里的人名被一一打印出來了。for 函數的作用就是用于遍歷數據。掌握for函數,可以說是真正入門了Python函數。

 

B.爬蟲和循環

 

for函數在書寫Python爬蟲中經常被應用,因為爬蟲經常需要遍歷每一個網頁,以獲取信息,所以構建完整而正確的網頁鏈接十分關鍵。以某票房數據網為例,他的網站信息長這樣:

 

該網站的周票房json數據地址可以通過抓包工具找到,網址為http://www.cbooo.cn/BoxOffice/getWeekInfoData?sdate=20190114

 

仔細觀察,該網站不同日期的票房數據網址(url)只有后面的日期在變化,訪問不同的網址(url)就可以看到不同日期下的票房數據:

?

我們要做的是,遍歷每一個日期下的網址,用Python代碼把數據爬下來。此時for函數就派上用場了,使用它我們可以快速生成多個符合條件的網址:

 

為了方便理解,我給大家畫了一個for函數的遍歷過程示意圖:

此處省略掉后續爬取過程,相關爬蟲代碼見文末。我們使用爬蟲爬取了5800+條數據,包含20個字段,時間囊括了從2008年1月開始至2019年2月十一年期間的單周票房、累計票房、觀影人次、場均人次、場均票價、場次環比變化等信息。

 

 

 

3.Python怎么實現數據分析?

 

 

除了爬蟲,分析數據也是Python的重要用途之一,Excel能做的事,Python究竟怎么實現呢;Excel不能做的事,Python又是否能實現呢?利用電影票房數據,我們分別舉一個例子說明:

 

A.Python分析

 

在做好數據采集和導入后,選擇字段進行初步分析可以說是數據分析的必經之路。在Dataframe數據格式的幫助下,這個步驟變得很簡單。

 

比如當我們想看單周票房第一的排名分別都是哪些電影時,可以使用pandas工具庫中常用的方法,篩選出周票房為第一名的所有數據,并保留相同電影中周票房最高的數據進行分析整理:

 

 

9行代碼,我們完成了Excel里的透視表、拖動、排序等鼠標點擊動作。最后再用Python中的可視化包matplotlib,快速出圖:

 

 

 

B.函數化分析

 

以上是一個簡單的統計分析過程。接下來就講講Excel基礎功能不能做的事——自定義函數提效。觀察數據可以發現,數據中記錄了周票房和總票房的排名,那么剛剛計算了周票房排名的代碼,還能不能復用做一張總票房分析呢?

 

當然可以,只要使用def函數和剛剛寫好的代碼建立自定義函數,并說明函數規則即可:

定義函數后,批量出圖so easy:

 

學會函數的構建,一個數據分析師才算真正能夠告別Excel的鼠標點擊模式,邁入高效分析的領域。

主站蜘蛛池模板: 插我舔内射18免费视频 | 天天躁日日躁狠狠躁中文字幕老牛 | 在线亚洲欧美 | 亚洲欧美成人一区二区在线电影 | 无码一区18禁3d| 99久久精品国产麻豆 | 在线观看毛片网站 | 久久国产精品久久久久久久久久 | 国产三级在线看 | 色妞色综合久久夜夜 | 狠狠精品干练久久久无码中文字幕 | 免费欧洲毛片a级视频 | 成年女人毛片免费视频 | 日本不卡一区在线 | 免费爱爱的视频太爽了 | 亚洲国产一级毛片 | 国内一区二区 | 久久久亚洲欧洲日产国码aⅴ | 婷婷在线视频观看 | 亚洲国产综合精品中文第一区 | 欧美成人性色 | 少妇被躁爽到高潮无码久久 | 香港一级毛片免费看 | 国产又黄又大又粗的视频 | 国产一区二区三区四区在线 | 国产裸体舞一区二区三区 | 国产又a又黄又潮娇喘视频 国产又粗又大又黄 | 99精品国产综合久久久久 | 福利片网址 | 欧美精品午夜毛片免费看 | 久久riav.com| 亚洲av美国av产亚洲av图片 | 国产一区二区视频在线播放 | 欧美大片毛片大片 | 精品性久久 | 色妞色综合久久夜夜 | 精品在线一区二区三区 | 一区二区三区视频免费 | 亚洲第一免费视频 | 久久久久久国产精品视频 | 国产激情一区二区三区四区 |