相關商品
商品簡介
作者簡介
名人/編輯推薦
序
目次
書摘/試閱
商品簡介
《利用Python進行數據分析》內容簡介:學習NumPy(NumericalPython)的基礎和高級知識;從pandas庫的數據分析工具開始利用高性能工具對數據進行加載、清理、轉換、合并以及重塑;利用matpIotlib創建散點圖以及靜態或交互式的可視化結果;利用pandas的groupby功能對數據集進行切片、切塊和匯總操作;處理各種各樣的時間序列數據。
作者簡介
Wes McKinney 資深數據分析專家,對各種Python庫(包括NumPy、pandas、matplotlib以及IPython等)等都有深入研究,并在大量的實踐中積累了豐富的經驗。撰寫了大量與Python數據分析相關的經典文章,被各大技術社區爭相轉載,是Python和開源技術社區公認的權威人物之一。開發了用于數據分析的著名開源Python庫——pandas,廣獲用戶好評。在創建Lambda Foundry(一家致力于企業數據分析的公司)之前,他曾是AQR Capital Management的定量分析師。
名人/編輯推薦
《利用Python進行數據分析》適合剛剛接觸Python的分析人員以及剛剛接觸科學計算的Python程序員。將IPython這個交互式Shell作為你的首要開發環境。
序
前言
針對科學計算領域的Python開源庫生態系統在過去10年中得到了飛速發展。2011年底,我深深地感覺到,由于缺乏集中的學習資源,剛剛接觸數據分析和統計應用的Python程序員舉步維艱。針對數據分析的關鍵項目(尤其是NumPy、matplotlib和pandas)已經很成熟了,也就是說,寫一本專門介紹它們的圖書貌似不會很快過時。因此,我下定決心要開始這樣的一個寫作項目。我在2007年剛開始用Python進行數據分析工作時就希望能夠得到這樣一本書。希望你也能覺得本書有用,同時也希望你能將書中介紹的那些工具高效地運用到實際工作中去。
本書的約定
本書使用了以下排版約定:
斜體(Italic)
用于新術語、URL、電子郵件地址、文件名與文件擴展名。
等寬字體(Constant width)
用于表明程序清單,以及在段落中引用的程序中的元素,如變量、函數名、數據庫、數據類型、環境變量、語句、關鍵字等。
等寬粗體(Constant width bold)
用于表明命令,或者需要讀者逐字輸入的文本內容。
等寬斜體(Constant width italic)
用于表示需要使用用戶提供的值或者由上下文決定的值來替代的文本內容。
注意: 代表一個技巧、建議或一般性說明。
警告: 代表一個警告或注意事項。
示例代碼的使用
本書提供代碼的目的是幫你快速完成工作。一般情況下,你可以在你的程序或文檔中使用本書中的代碼,而不必取得我們的許可,除非你想復制書中很大一部分代碼。例如,你在編寫程序時,用到了本書中的幾個代碼片段,這不必取得我們的許可。但若將O扲eilly圖書中的代碼制作成光盤并進行出售或傳播,則需獲得我們的許可。引用示例代碼或書中內容來解答問題無需許可。將書中很大一部分的示例代碼用于你個人的產品文檔,這需要我們的許可。
如果你引用了本書的內容并標明版權歸屬聲明,我們對此表示感謝,但這不是必需的。版權歸屬聲明通常包括:標題、作者、出版社和ISBN號,例如:“Python for Data Analysis by William Wesley McKinney (Oeilly). Copyright 2013 William Wesley McKinney, 978-1-449-31979-3”。
如果你認為你對示例代碼的使用已經超出上述范圍,或者你對是否需要獲得示例代碼的授權還不清楚,請隨時聯系我們:permissions@oreilly.com。
聯系我們
有關本書的任何建議和疑問,可以通過下列方式與我們取得聯系:
美國:
Oeilly Media, Inc.
1005 Gravenstein Highway North
Sebastopol, CA 95472
中國:
北京市西城區西直門南大街2號成銘大廈C座807室(100035)
奧萊利技術咨詢(北京)有限公司
我們會在本書的網頁中列出勘誤表、示例和其他信息。可以通過http://oreil.ly/Python_for_Data_Analysis訪問該頁面。
要評論或詢問本書的技術問題,請發送電子郵件到:
bookquestions@oreilly.com
想了解關于Oeilly圖書、課程、會議和新聞的更多信息,請訪問以下網站:
http://www.oreilly.com.cn
http://www.oreilly.com
還可以通過以下網站關注我們:
我們在Facebook上的主頁:http://facebook.com/oreilly
我們在Twitter上的主頁:http://twitter.com/oreillymedia
我們在YouTube上的主頁:http://www.youtube.com/oreillymedia
針對科學計算領域的Python開源庫生態系統在過去10年中得到了飛速發展。2011年底,我深深地感覺到,由于缺乏集中的學習資源,剛剛接觸數據分析和統計應用的Python程序員舉步維艱。針對數據分析的關鍵項目(尤其是NumPy、matplotlib和pandas)已經很成熟了,也就是說,寫一本專門介紹它們的圖書貌似不會很快過時。因此,我下定決心要開始這樣的一個寫作項目。我在2007年剛開始用Python進行數據分析工作時就希望能夠得到這樣一本書。希望你也能覺得本書有用,同時也希望你能將書中介紹的那些工具高效地運用到實際工作中去。
本書的約定
本書使用了以下排版約定:
斜體(Italic)
用于新術語、URL、電子郵件地址、文件名與文件擴展名。
等寬字體(Constant width)
用于表明程序清單,以及在段落中引用的程序中的元素,如變量、函數名、數據庫、數據類型、環境變量、語句、關鍵字等。
等寬粗體(Constant width bold)
用于表明命令,或者需要讀者逐字輸入的文本內容。
等寬斜體(Constant width italic)
用于表示需要使用用戶提供的值或者由上下文決定的值來替代的文本內容。
注意: 代表一個技巧、建議或一般性說明。
警告: 代表一個警告或注意事項。
示例代碼的使用
本書提供代碼的目的是幫你快速完成工作。一般情況下,你可以在你的程序或文檔中使用本書中的代碼,而不必取得我們的許可,除非你想復制書中很大一部分代碼。例如,你在編寫程序時,用到了本書中的幾個代碼片段,這不必取得我們的許可。但若將O扲eilly圖書中的代碼制作成光盤并進行出售或傳播,則需獲得我們的許可。引用示例代碼或書中內容來解答問題無需許可。將書中很大一部分的示例代碼用于你個人的產品文檔,這需要我們的許可。
如果你引用了本書的內容并標明版權歸屬聲明,我們對此表示感謝,但這不是必需的。版權歸屬聲明通常包括:標題、作者、出版社和ISBN號,例如:“Python for Data Analysis by William Wesley McKinney (Oeilly). Copyright 2013 William Wesley McKinney, 978-1-449-31979-3”。
如果你認為你對示例代碼的使用已經超出上述范圍,或者你對是否需要獲得示例代碼的授權還不清楚,請隨時聯系我們:permissions@oreilly.com。
聯系我們
有關本書的任何建議和疑問,可以通過下列方式與我們取得聯系:
美國:
Oeilly Media, Inc.
1005 Gravenstein Highway North
Sebastopol, CA 95472
中國:
北京市西城區西直門南大街2號成銘大廈C座807室(100035)
奧萊利技術咨詢(北京)有限公司
我們會在本書的網頁中列出勘誤表、示例和其他信息。可以通過http://oreil.ly/Python_for_Data_Analysis訪問該頁面。
要評論或詢問本書的技術問題,請發送電子郵件到:
bookquestions@oreilly.com
想了解關于Oeilly圖書、課程、會議和新聞的更多信息,請訪問以下網站:
http://www.oreilly.com.cn
http://www.oreilly.com
還可以通過以下網站關注我們:
我們在Facebook上的主頁:http://facebook.com/oreilly
我們在Twitter上的主頁:http://twitter.com/oreillymedia
我們在YouTube上的主頁:http://www.youtube.com/oreillymedia
目次
前言1
第1章準備工作5
本書主要內容5
為什么要使用Python進行數據分析6
重要的Python庫7
安裝和設置10
社區和研討會16
使用本書16
致謝18
第2章引言20
來自bit.ly的1.usa.gov數據21
MovieLens1M數據集29
1880—2010年間全美嬰兒姓名35
小結及展望47
第3章IPython:一種交互式計算和開發環境48
IPython基礎49
內省51
使用命令歷史60
與操作系統交互63
軟件開發工具66
IPythonHTMLNotebook75
利用IPython提高代碼開發效率的幾點提示77
高級IPython功能79
致謝81
第4章NumPy基礎:數組和矢量計算82
NumPy的ndarray:一種多維數組對象83
通用函數:快速的元素級數組函數98
利用數組進行數據處理100
用于數組的文件輸入輸出107
線性代數109
隨機數生成111
范例:隨機漫步112
第5章pandas入門115
pandas的數據結構介紹116
基本功能126
匯總和計算描述統計142
處理缺失數據148
層次化索引153
其他有關pandas的話題158
第6章數據加載、存儲與文件格式162
讀寫文本格式的數據162
二進制數據格式179
使用HTML和WebAPI181
使用數據庫182
第7章數據規整化:清理、轉換、合并、重塑186
合并數據集186
重塑和軸向旋轉200
數據轉換204
字符串操作217
示例:USDA食品數據庫224
第8章繪圖和可視化231
matplotlibAPI入門231
pandas中的繪圖函數244
繪制地圖:圖形化顯示海地地震危機數據254
Python圖形化工具生態系統260
第9章數據聚合與分組運算263
GroupBy技術264
數據聚合271
分組級運算和轉換276
透視表和交叉表288
示例:2012聯邦選舉委員會數據庫291
第10章時間序列302
日期和時間數據類型及工具303
時間序列基礎307
日期的范圍、頻率以及移動311
時區處理317
時期及其算術運算322
重采樣及頻率轉換327
時間序列繪圖334
移動窗口函數337
性能和內存使用方面的注意事項342
第11章金融和經濟數據應用344
數據規整化方面的話題344
分組變換和分析355
更多示例應用361
第12章NumPy高級應用368
ndarray對象的內部機理368
高級數組操作370
廣播378
ufunc高級應用383
結構化和記錄式數組386
更多有關排序的話題388
NumPy的matrix類393
高級數組輸入輸出395
性能建議397
附錄APython語言精要401
第1章準備工作5
本書主要內容5
為什么要使用Python進行數據分析6
重要的Python庫7
安裝和設置10
社區和研討會16
使用本書16
致謝18
第2章引言20
來自bit.ly的1.usa.gov數據21
MovieLens1M數據集29
1880—2010年間全美嬰兒姓名35
小結及展望47
第3章IPython:一種交互式計算和開發環境48
IPython基礎49
內省51
使用命令歷史60
與操作系統交互63
軟件開發工具66
IPythonHTMLNotebook75
利用IPython提高代碼開發效率的幾點提示77
高級IPython功能79
致謝81
第4章NumPy基礎:數組和矢量計算82
NumPy的ndarray:一種多維數組對象83
通用函數:快速的元素級數組函數98
利用數組進行數據處理100
用于數組的文件輸入輸出107
線性代數109
隨機數生成111
范例:隨機漫步112
第5章pandas入門115
pandas的數據結構介紹116
基本功能126
匯總和計算描述統計142
處理缺失數據148
層次化索引153
其他有關pandas的話題158
第6章數據加載、存儲與文件格式162
讀寫文本格式的數據162
二進制數據格式179
使用HTML和WebAPI181
使用數據庫182
第7章數據規整化:清理、轉換、合并、重塑186
合并數據集186
重塑和軸向旋轉200
數據轉換204
字符串操作217
示例:USDA食品數據庫224
第8章繪圖和可視化231
matplotlibAPI入門231
pandas中的繪圖函數244
繪制地圖:圖形化顯示海地地震危機數據254
Python圖形化工具生態系統260
第9章數據聚合與分組運算263
GroupBy技術264
數據聚合271
分組級運算和轉換276
透視表和交叉表288
示例:2012聯邦選舉委員會數據庫291
第10章時間序列302
日期和時間數據類型及工具303
時間序列基礎307
日期的范圍、頻率以及移動311
時區處理317
時期及其算術運算322
重采樣及頻率轉換327
時間序列繪圖334
移動窗口函數337
性能和內存使用方面的注意事項342
第11章金融和經濟數據應用344
數據規整化方面的話題344
分組變換和分析355
更多示例應用361
第12章NumPy高級應用368
ndarray對象的內部機理368
高級數組操作370
廣播378
ufunc高級應用383
結構化和記錄式數組386
更多有關排序的話題388
NumPy的matrix類393
高級數組輸入輸出395
性能建議397
附錄APython語言精要401
書摘/試閱
第1章
準備工作
本書主要內容
本書講的是利用Python進行數據控制、處理、整理、分析等方面的具體細節和基本要點。同時,它也是利用Python進行科學計算的實用指南(專門針對數據密集型應用)。本書重點介紹了用于高效解決各種數據分析問題的Python語言和庫。本書沒有闡述如何利用Python實現具體的分析方法。
當書中出現“數據”時,究竟指的是什么呢?主要指的是結構化數據(structureddata),這個故意含糊其辭的術語代指了所有通用格式的數據,例如:
多維數組(矩陣)。
表格型數據,其中各列可能是不同的類型(字符串、數值、日期等)。比如保存在關系型數據庫中或以制表符/逗號為分隔符的文本文件中的那些數據。
通過關鍵列(對于SQL用戶而言,就是主鍵和外鍵)相互聯系的多個表。
間隔平均或不平均的時間序列。
這絕不是一個完整的列表。大部分數據集都能被轉化為更加適合分析和建模的結構化形式,雖然有時這并不是很明顯。如果不行的話,也可以將數據集的特征提取為某種結構化形式。例如,一組新聞文章可以被處理為一張詞頻表,而這張詞頻表就可以用于情感分析。
大部分電子表格軟件(比如MicrosoftExcel,它可能是世界上使用最廣泛的數據分析工具了)的用戶不會對此類數據感到陌生。
為什么要使用Python進行數據分析
許許多多的人(包括我自己)都很容易愛上Python這門語言。自從1991年誕生以來,Python現在已經成為最受歡迎的動態編程語言之一,其他還有Perl、Ruby等。由于擁有大量的Web框架(比如Rails(Ruby)和Django(Python)),最近幾年非常流行使用Python和Ruby進行網站建設工作。這些語言常被稱作腳本(scripting)語言,因為它們可以用于編寫簡短而粗糙的小程序(也就是腳本)。我個人并不喜歡“腳本語言”這個術語,因為它好像在說這些語言無法用于構建嚴謹的軟件。在眾多解釋型語言中,Python最大的特點是擁有一個巨大而活躍的科學計算(scientificcomputing)社區。進入21世紀以來,在行業應用和學術研究中采用Python進行科學計算的勢頭越來越猛。
主題書展
更多
主題書展
更多書展本週66折
您曾經瀏覽過的商品
購物須知
大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。
特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。
無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。