pandas是python數(shù)據(jù)分析中非常常用的一個模塊,pandas中功能較多學起來有一定難度,本片文章通過一些簡單例子帶大家快速上手pandas。
創(chuàng)新互聯(lián)服務項目包括襄陽網(wǎng)站建設、襄陽網(wǎng)站制作、襄陽網(wǎng)頁制作以及襄陽網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網(wǎng)行業(yè)的解決方案,襄陽網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到襄陽省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!
我們要用的森林植被的數(shù)據(jù),文件名為parks.csv。
首先先載入pandas:
import pandas as pd然后用pandas讀入數(shù)據(jù),把公園編號'Park Code'設置為index
df = pd.read_csv('parks.csv', index_col=['Park Code'])
# 顯示出前5行
df.head(5)
數(shù)據(jù)的列分別為:公園名字,公園在哪個州,公園大小,維度,經(jīng)度
獲取單行數(shù)據(jù):
使用.iloc?加上行索引獲取單行數(shù)據(jù)
df.iloc[2]Park Name ???Badlands National Park
State ???????????????????????????SD
Acres ???????????????????????242756
Latitude ?????????????????????43.75
Longitude ???????????????????-102.5
Name: BADL, dtype: object
使用?.loc?方法加上index的名稱獲取單行數(shù)據(jù)
df.loc['BADL']?Park Name ???Badlands National Park
State ???????????????????????????SD
Acres ???????????????????????242756
Latitude ?????????????????????43.75
Longitude ???????????????????-102.5
Name: BADL, dtype: object
獲取多行數(shù)據(jù):
loc加上多行數(shù)據(jù)的名稱
df.loc[['BADL', 'ARCH', 'ACAD']]
iloc加上行索引
df.iloc[[2, 1, 0]]
獲取數(shù)據(jù)分片
# 獲取前3行數(shù)據(jù)
df[:3]
# 獲取后3行數(shù)據(jù)
df[-3:]
獲取單列數(shù)據(jù)
獲得State這一列數(shù)據(jù)的前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 "<ipython-input-66-49beb60e7bae>", 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')
獲取多列數(shù)據(jù)
columns = ['state', 'acres']
df[columns][:3]
選擇數(shù)據(jù)的子集
選擇state=='UT'的數(shù)據(jù),F(xiàn)alse表示條件該行條件不成立,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']
更復雜一些的數(shù)據(jù)提取,獲取緯度大于60或者面積大于10^6的數(shù)據(jù)的前三行
df[(df.latitude > 60) | (df.acres > 10**6)].head(3)
對park_name中的字符以空格做切分,切分后放入lambda x: len(x) == 3函數(shù)中做判斷,如果判斷正確返回True,判斷錯誤返回False
df[df['park_name'].str.split().apply(lambda x: len(x) == 3)].head(3)
state中的數(shù)字為['WA', 'OR', 'CA']中的一個則為True,否則為False
df[df.state.isin(['WA', 'OR', 'CA'])].head()
當前標題:實戰(zhàn)|快速上手Pandas
文章出自:http://www.chinadenli.net/article32/gpcpsc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、搜索引擎優(yōu)化、全網(wǎng)營銷推廣、外貿(mào)網(wǎng)站建設、網(wǎng)頁設計公司、網(wǎng)站改版
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)