pandas處理資料之loc切片的用法

2021-09-29 18:49:04 字數 1826 閱讀 1000

簡單的說:

iloc,即index locate 用index索引進行定位,所以引數是整型,如:df.iloc[10:20, 3:5]

loc,則可以使用column名和index名進行定位,如:

df.loc[『image1』:『image10』, 『age』:『score』]

首先初始化乙個df方便使用

import pandas as pd

import numpy as np

df=pd.dataframe(np.random.uniform(1,5,(4,3)))

設定行列的名字

df.index=['a','b','c','d']

df.colums==['fir','sec','thr']

或者直接在初始化的時候直接寫入如

df = pd.dataframe(np.random.uniform(1,5,(4,3)), index=['a', 'b', 'c','d'],columns=['fir', 'sec','thr'])
單一標籤:返回一整行

df.loc['a']
標籤列表。使用返回dataframe

df.loc[['a','b']]#a,b兩行
返回指定行列的值

df.loc['a','fir']#返回a行fir列的值
切片表示行開始和結束的位置 注意範圍 和要顯示的列

df.loc['a':'c','fir']#這是a到c行返回fir這一列的值
布林值返回需要的行數

df.loc[[falese,true,false,true]]#返回b和c行,長度和行相同
增加條件進行篩選

df.loc[df['third']>3]#選取在third列中值大於3的行
按條件顯示

df.loc[df['third']>3,'fir']#選取third列中值大於三的並顯示相應的fir的值
設定整行的值

df.loc['a']=2.33#設定a行的所有值為2.33
設定整列的值

df.loc[:,'fir']=4.22#設定fir整列的值為4.22
1、loc 不僅可以輸入數字也可以直接column名字,注意先行後列

df.loc[[0, 1, 10, 100], ['country', 'province', 'region_1', 'region_2']]
表示index(行)為0,1,10,100,列名為'country', 'province', 'region_1', 'region_2'。

2、

df.loc[df.country=='italy']
選取country 列全是『italy』的資料

3、這兩種寫法等同,注意isin()的用法

df_final = df[df.country.isin(["italy", "france"]) & (df.points >= 90)].country
df = df[df.points>=90]

df_final = (df.loc[df.country.isin(['france','italy']),'country'])

Pandas基本操作總結 資料篩選loc

1 loc篩選 loc為普遍用法 得到單個值 df.loc e行 f列 df.loc a行 b列 f列 e列 列表批量查詢 df.loc a行 b行 f行 b列 f列 e列 區間範圍連續查詢 df.loc a行 c行 b列 c列 條件表示式查詢 df.loc df c列 0,篩選c列 0,顯示滿足條...

Pandas 資料讀取 DataFrame切片

import numpy as np dataset filename affinity dataset.txt x np.loadtxt dataset filename n samples,n features x.shape print this dataset has samples and...

Pandas 資料讀取 DataFrame切片

import numpy as np dataset filename affinity dataset.txt x np.loadtxt dataset filename n samples,n features x.shape print this dataset has samples and...