国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

實戰:從Python分析17-18賽季NBA勝率超70%球隊數據開始…

denson / 1289人閱讀

摘要:作為一個正奮戰在之路上的球迷,開始了一次數據分析實戰,于是,以分析球賽數據為起點的操作開始了前言作為一個功能強大的編程語言,如今在數據分析機器學習人工智能等方面如日中天。

Casey    豈安業務風險分析師

主要負責豈安科技RED.Q的數據分析和運營工作。

12月19日,科比再次站在斯臺普斯中心球館中央,見證自己的兩件球衣高懸于球館上空。作為一個正奮戰在 Python 之路上的球迷,開始了一次數據分析實戰,于是,以分析球賽數據為起點的操作開始了......

前言

python 作為一個功能強大的編程語言,如今在數據分析、機器學習、人工智能等方面如日中天。如果想做數據分析,那么 python 則為一把利器。
初入職場,除了使用 python 中列表、元組、字典等常用數據類型外,經常會接觸到一些如 csv 文件、json 格式的數據、或者直接要和數據庫打交道。
本文,通過幾個小例子簡述 python 對 csv、json、mysql 的簡單操作。

數據分析實戰

1已知 nba-season_17_18.csv 文件(見下圖)存放截至目前17-18賽季 NBA 常規賽聯盟全部球隊的數據。
現在需要將勝率超過 70% 并且場均得分在 110 分的球隊信息寫入到 result.csv 中。

上述對 csv 文件的操作可通過 python 中的 csv 模塊輕松實現,csv 模塊分別通過 reader() 和 writer() 實現對 csv 文件的讀寫,這兩種方法都需要傳入文件對象。
因此,首先需要使用 open 方法打開 nba-season_17_18.csv,并創建文件對象。

注意:
需要先將文件第一行要寫入 result.csv,其余行要依次通過if語句判斷勝率和場均得分再選擇是否寫入。
判斷時要注意 reader 中的 row[3] 和 row[10] 是字符串類型,需要轉換成 float 類型。

實現的代碼如下:

最終result.csv如下:

2json 作為一種輕量級的文本數據交換格式,因為在網絡傳輸過程中具有節省流量、加快速度等優點,使其成為理想的數據交換語言。
python 對 json 的操作主要通過 json 模塊中的 dumps() 函數和 loads() 函數。前者將 python 對象編碼 json 字符串,而后者則是將已經編碼的 json 字符串解碼為 python 對象。

代碼中 dumps() 函數將列表data編碼為 json,其中參數 separators 默認是", "或": "(逗號和冒號后邊分別有一個空格)。
第三行代碼表示去掉逗號和冒號后邊的空格,參數 indent 設置 json 檢驗后的縮進位數。
代碼中 loads() 函數將第三行輸出的 json 解碼為原來的列表格式。

如果上述 json 字符串和 python 對象存儲在文件中,也不用擔心,json 模塊中的 dump() 和 load() 正是為此而生的。見第8行代碼。
輸出結果如下:

3方便高效的操作數據庫可以節省分析師大量的時間,python 中 pymysql 模塊正好滿足。
該模塊操作數據庫的過程可分為以下幾步:

其中,創建 connection 對象需要傳入以下參數:host(MySQL服務器地址)、port(mysql服務器端口號,默認3306)、user(用戶名)、passwd(密碼)、db(數據庫名)等。
使用 cursor.execute() 執行的 sql 語句,可以是 select 查詢語句,也可以是 insert、update、delete 等操作語句。
cursor 獲取數據的方法有:
?fecthone() 獲取結果集中的下一條數據
?fecthmany(n) 獲取結果集中的下 n 條數據
?fetchall() 獲取結果集中的剩下所有數據

下圖是獲取并打印本地數據庫中數據的一個例子:

值得注意的是, connection 對象除了 cursor() 方法外,還為支持事務提供兩個重要的方法:
commit() 和 rollback()
這兩個方法分別是提交所有操作,和回滾當前游標的所有操作。例如,在上例中,Tom借了Lucy10元錢,那么此時需要先將Lucy的壓歲錢減掉10,然后將Tom的壓歲錢增加10。此時使用事務來保證數據庫的完整性,即要么兩步都執行,要么都不執行。

結果如下:

結語

本文用 python 對 csv、json、mysql 進行了簡單操作。當然要做好數據分析,這些還遠遠不夠。python 知識體系龐大,有大量高效且優秀的庫,不得不提的是:

科學計算領域的 NumPy 和 SciPy

數據分析領域的 Pandas

機器學習領域的 scikit-learn。

總之,python 的知識點眾多,學好不是一朝一夕的事情。但是,初入職場的小白覺得,學習其中任何一個知識點,除了看書、聽課、參加講座等方式外,更重要的是實際操作能力和思考總結能力。

當然我也一直在學習中。文中有不當之處,敬請批評指正。如果您有關于數據分析的想法,特別歡迎一起交流、共同進步。謝謝。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/41179.html

相關文章

  • Python告訴你NBA球星都喜歡在哪個位置出手?

    摘要:近日各隊紛紛發布季前賽賽程,迎接新賽季。實際上,數據分析團隊對于現在的球隊已經算是標配了,無論是在球員選擇還是戰術制定上都起著重要的作用。于是,我們就借助官方數據和的繪圖函數,來看一看不同的球員都是在什么位置出手投籃的。比如林書豪就是。 showImg(https://segmentfault.com/img/remote/1460000019790849); 作者 | Crossin...

    stackfing 評論0 收藏0
  • python在Scikit-learn中用決策樹和隨機森林預測NBA獲勝者

    摘要:在本文中,我們將以的決策樹和隨機森林預測獲勝者。用決策樹和隨機森林預測獲勝者導入數據集并解析日期導入熊貓作為。這將幫助我們查看決策樹分類器的預測是否正確。混淆矩陣顯示了我們決策樹的正確和不正確的分類。 showImg(https://segmentfault.com/img/bVbcr26?w=750&h=383); 在本文中,我們將以Scikit-learn的決策樹和隨機森林預測NB...

    learning 評論0 收藏0
  • 采用 Python 機器學習預測足球比賽結果

    摘要:采用機器學習預測足球比賽結果足球是世界上最火爆的運動之一,世界杯期間也往往是球迷們最亢奮的時刻。特征工程在機器學習中占有非常重要的作用,一般認為括特征構建特征提取特征選擇三大部分。 采用 Python 機器學習預測足球比賽結果 足球是世界上最火爆的運動之一,世界杯期間也往往是球迷們最亢奮的時刻。比賽狂歡季除了炸出了熬夜看球的鐵桿粉絲,也讓足球競猜也成了大家茶余飯后最熱衷的話題。甚至連原...

    FrancisSoung 評論0 收藏0

發表評論

0條評論

denson

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<