資料分析工具Pandas 索引操作總結

2021-10-22 14:31:10 字數 2195 閱讀 9642

pandas中,使用索引獲取資料的方式可歸納為3種:

1. .loc,標籤索引   

2. .iloc,位置索引

loc與iloc主要用於行索引,其中,使用名稱/標籤的切片索引是包含末尾位置的。

3. 布林值遮罩:

對應位置為true的時候,則取得該資料。

in [1]:

import pandas as pd
import numpy as np
in [12]:

# 構建dataframe
country1 = pd.series({'name':'中國',
'language':'chinese',
'area':'9.597m km2',
country2 = pd.series({'name':'美國',
'language':'english(us)',
'area':'9.83m km2',
country3 = pd.series({'name':'澳大利亞',
'language':'english(au)',
'area':'7.692m km2',
df = pd.dataframe([country1,country2,country3],index=['ch','us','au'])
in [3]:

df
out[3]:

name

language

area

ch中國

chinese

9.597m km2

79us

美國usa

9.83m km2

14au

澳大利亞

austria

7.692m km2

9in [13]:

df.loc['ch']
out[13]:

name                      中國

language chinese

area 9.597m km2

name: ch, dtype: object

in [14]:

df.iloc[[0,2]]
out[14]:

name

language

area

ch中國

chinese

9.597m km2

79au

澳大利亞

english(au)

7.692m km2

9in [15]:

# 找出說英語的國家
df['language'].str.contains('english')
out[15]:

ch    false

us true

au true

name: language, dtype: bool

in [16]:

#生成布林值遮罩
filter_condition = df['language'].str.contains('english')
df[filter_condition]
out[16]:

name

language

area

us美國

english(us)

9.83m km2

14au

澳大利亞

english(au)

7.692m km2

9in [17]:

# 過濾出排名前20的國家

out[17]:

name

language

area

us美國

english(us)

9.83m km2

14au

澳大利亞

english(au)

7.692m km2

9in [ ]:

資料分析工具pandas

14 分組運算 原因 聚合運算改變了原始資料的shape 如何保持原始資料的shape?使用merge的外連線,比較複雜 transform transform的計算結果和原始資料的shape保持一致 如 grouped.transform mp.mean 也可傳入自定義函式 1.資料清洗時資料分析...

Python資料分析之pandas比較操作

比較運算子用於判斷是否相等和比較大小,python中的比較運算子有 六個,pandas中也一樣。在pandas中,dataframe和series還支援6個比較方法,詳見下表。方法英文全稱 用途程式設計客棧 eqequal to 等於ne not equa to 不等於lt less than 小於...

資料分析工具 Pandas 功能介紹

原文 如果你在使用 pandas pythondata analysis library 的話,下面介紹的對你一定會有幫助的。首先我們先介紹一些簡單的概念 分批載入 有時我們可能需要載入的 csv 太大,可能會導致記憶體爆掉,這時候,我們就需要分批載入資料進行分析 處理 df.head n 瀏覽資料...