實戰 | 快速上手Pandas

項目介紹

pandas是python數據分析中很是經常使用的一個模塊,pandas中功能較多學起來有必定難度,本片文章經過一些簡單例子帶你們快速上手pandas。
python

咱們要用的森林植被的數據,文件名爲parks.csv。git

首先先載入pandas:web

  
  
  
   
   
            
   
   
  1. 微信

import pandas as pd

而後用pandas讀入數據,把公園編號'Park Code'設置爲index網絡

  
  
  
   
   
            
   
   
  1. app

  2. 機器學習

  3. ide

df = pd.read_csv('parks.csv', index_col=['Park Code'])# 顯示出前5行df.head(5)

數據的列分別爲:公園名字,公園在哪一個州,公園大小,維度,經度函數

獲取單行數據學習

使用.iloc 加上行索引獲取單行數據

  
  
  
   
   
            
   
   
df.iloc[2]

Park Name    Badlands National Park 

State                            SD 

Acres                        242756 

Latitude                      43.75 

Longitude                    -102.5 

Name: BADL, dtype: object

使用 .loc 方法加上index的名稱獲取單行數據

  
  
  
   
   
            
   
   
df.loc['BADL'] 

Park Name    Badlands National Park 

State                            SD 

Acres                        242756 

Latitude                      43.75 

Longitude                    -102.5 

Name: BADL, dtype: object

獲取多行數據

loc加上多行數據的名稱

  
  
  
   
   
            
   
   
df.loc[['BADL', 'ARCH', 'ACAD']]

iloc加上行索引

  
  
  
   
   
            
   
   
df.iloc[[2, 1, 0]]

獲取數據分片

  
  
  
   
   
            
   
   
# 獲取前3行數據df[:3]

  
  
  
   
   
            
   
   
# 獲取後3行數據df[-3:]

獲取單列數據 得到State這一列數據的前3行

  
  
  
   
   
            
   
   
df['State'].head(3)

Park Code 

ACAD    ME 

ARCH    UT 

BADL    SD 

Name: State, dtype: object

使用下面df.State方法能夠得到一樣效果

  
  
  
   
   
            
   
   
df.State.head(3)

Park Code 

ACAD    ME 

ARCH    UT 

BADL    SD 

Name: State, dtype: object

df.Park Code 將會出錯,由於Park Code中間有空格

  
  
  
   
   
            
   
   
df.Park Code

 File " ", line 1     df.Park Code                ^ SyntaxError: invalid syntax

咱們能夠把全部列的名稱中的空格都替換成 _避免出錯

  
  
  
   
   
            
   
   
df.columns = [col.replace(' ', '_').lower() for col in df.columns]print(df.columns)p=msno.bar(diabetes_data)

Index(['park_name', 'state', 'acres', 'latitude', 'longitude'], dtype='object')

獲取多列數據

  
  
  
   
   
            
   
   
columns = ['state', 'acres']df[columns][:3]

選擇數據的子集 選擇state=='UT'的數據,False表示條件該行條件不成立,True表示該行條件成立

  
  
  
   
   
            
   
   
 (df.state == 'UT').head()

Park Code 

ACAD    False 

ARCH     True 

BADL    False 

BIBE    False 

BISC    False 

Name: state, dtype: bool

選擇全部state=='UT'結果爲True的行

  
  
  
   
   
            
   
   
df[df.state == 'UT']

更復雜一些的數據提取,獲取緯度大於60或者面積大於10^6的數據的前三行

  
  
  
   
   
            
   
   
df[(df.latitude > 60) | (df.acres > 10**6)].head(3)

對park_name中的字符以空格作切分,切分後放入lambda x: len(x) == 3函數中作判斷,若是判斷正確返回True,判斷錯誤返回False

  
  
  
   
   
            
   
   
df[df['park_name'].str.split().apply(lambda x: len(x) == 3)].head(3)

state中的數字爲['WA', 'OR', 'CA']中的一個則爲True,不然爲False

  
  
  
   
   
            
   
   
df[df.state.isin(['WA', 'OR', 'CA'])].head()


做者簡介



你可能還想看

獨家連載:深度學習從0到1 

獨家連載 | 覃秉豐深度學習重磅新書首發搶讀!!!(1)

獨家連載 | 覃秉豐深度學習重磅新書首發搶讀!!!(2)

獨家連載 | 深度學習「四大天王」,你知道幾個?

獨家連載 | 用了那麼久Python,你可能還不知道...

獨家連載 | 超詳細!帶你走進單層感知器與線性神經網絡

獨家連載 | 單層感知器與線性神經網絡(續)!

獨家連載 | 線性神經網絡應用


項目實戰:

實戰 | 你知道平常識別二維碼和條形碼是怎麼實現的嗎?

實戰 | 一行命令訓練你的圖像分類模型

實戰 | 一行命令實現看圖說話(Google的im2txt模型)

實戰 | 抖音百萬點贊:視頻的字符化

實戰 | 幾行代碼就能實現糖尿病預測了?是的,你沒看錯!

實戰 | 一招讓你的mao(貓)片十倍增加

實戰 | 你知道如何用python獲取股票交易數據嗎?


資源放送:

資源 | 豆瓣8.2!《機器學習實戰》

資源 | 中文版!《Deep Learning with Python》

資源 | 雙語版!斯坦福CS229機器學習速查表集錦

資源 | 吳恩達新書《機器學習訓練祕籍》中文版免費領取

資源 | 推薦!《Keras圖像深度學習實戰》,免費領取

資源 | 必看乾貨!AI 從業者都應該知道的實驗數據集

資源 | 斯坦福深度學習基礎教程中文版實操項目

力薦!一本看了目錄就想窺探的書!

吳恩達《機器學習》筆記,哥大研究生獻上


更多幹貨後臺回覆關鍵詞領取

深度學習 | 機器學習 | 計算機視覺 | AI將來 | 數據分析




你的點贊轉發是對咱們最大的支持

- End -

本文分享自微信公衆號 - AI MOOC人工智能平臺(AIMOOC_XLAB)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索