pandas實現按行選擇的示例代碼

本文所用到的Excel表格內容如下:

1.自定義行索引

dataframe讀取Excel表格時是由自定義行索引的。這裡為瞭展示效果,先進行自定義行索引的操作

import pandas as pd
​
df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
print('設置索引前:')
print(df)
print('設置索引後:')
df.index = ['一', '二', '三', '四', '五']
print(df)

result:
設置索引前:
   區域   省份  城市         時間  指標     地址    權重      字符
0  東北   遼寧  大連 2019-09-06  12  “123“  0.78  u”123″
1  西北   廣東  西安 2019-09-07  87  “124“  0.65  u”124″
2  華南   北京  深圳 2019-09-08  87  “125“  0.34  u”125″
3  華北   湖北  北京 2019-09-09  45  “126“  1.23  u”126″
4  華中  黑龍江  武漢 2019-09-10  21  “127“  8.90  u”127″
設置索引後:
   區域   省份  城市         時間  指標     地址    權重      字符
一  東北   遼寧  大連 2019-09-06  12  “123“  0.78  u”123″
二  西北   廣東  西安 2019-09-07  87  “124“  0.65  u”124″
三  華南   北京  深圳 2019-09-08  87  “125“  0.34  u”125″
四  華北   湖北  北京 2019-09-09  45  “126“  1.23  u”126″
五  華中  黑龍江  武漢 2019-09-10  21  “127“  8.90  u”127″

2. 按普通索引選擇數據

這裡說一下,行普通索引實際上就是行名。為瞭行文方便,後續一律稱普通索引。

2.1 按普通索引選擇單行數據

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.loc['一'])

result:
區域                     東北
省份                     遼寧
城市                     大連
時間    2019-09-06 00:00:00
指標                     12
地址                  “123“
權重                   0.78
字符                 u”123″
Name: 一, dtype: object

2.2 按行索引選擇多行數據

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.loc[['一', '三', '四']])

result:
   區域  省份  城市         時間  指標     地址    權重      字符
一  東北  遼寧  大連 2019-09-06  12  “123“  0.78  u”123″
三  華南  北京  深圳 2019-09-08  87  “125“  0.34  u”125″
四  華北  湖北  北京 2019-09-09  45  “126“  1.23  u”126″

註:選擇單列數據是參數為字符串類型,多列數據時參數為列表類型

3.按位置索引選擇數據

3.1 按位置索引選擇單行數據

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.iloc[0])

result:
區域                     東北
省份                     遼寧
城市                     大連
時間    2019-09-06 00:00:00
指標                     12
地址                  “123“
權重                   0.78
字符                 u”123″
Name: 一, dtype: object

3.2 按位置索引選擇多行數據

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.iloc[[0, 1]])

result:
   區域  省份  城市         時間  指標     地址    權重      字符
一  東北  遼寧  大連 2019-09-06  12  “123“  0.78  u”123″
二  西北  廣東  西安 2019-09-07  87  “124“  0.65  u”124″

4.選擇連續多行數據

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
df.index = ['一', '二', '三', '四', '五']
print(df.iloc[0:2])

result:
   區域  省份  城市         時間  指標     地址    權重      字符
一  東北  遼寧  大連 2019-09-06  12  “123“  0.78  u”123″
二  西北  廣東  西安 2019-09-07  87  “124“  0.65  u”124″

表示獲取所有行第1列到第3列的數據。選擇連續多列數據時語法類似於切片語法,所以也稱之為切片索引。

5.選擇滿足條件的行

5.1單個條件選擇

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
print(df[df['指標'] < 50])

result:
   區域   省份  城市         時間  指標    權重
0  東北   遼寧  大連 2019-09-06  12  0.78
3  華北   湖北  北京 2019-09-09  45  1.23
4  華中  黑龍江  武漢 2019-09-10  21  8.90

5.2 多個條件選擇

5.2.1 多個條件是且的關系

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
print(df[(df['指標'] < 50) & (df['權重'] < 1)])

result:
   區域  省份  城市         時間  指標    權重
0  東北  遼寧  大連 2019-09-06  12  0.78

5.2.2 多個條件是或的關系

df = pd.read_excel(r'C:\Users\admin\Desktop\data_test.xlsx')
print(df[(df['指標'] < 50) | (df['權重'] < 1)])

result:
   區域   省份  城市         時間  指標    權重
0  東北   遼寧  大連 2019-09-06  12  0.78
1  西北   廣東  西安 2019-09-07  87  0.65
2  華南   北京  深圳 2019-09-08  87  0.34
3  華北   湖北  北京 2019-09-09  45  1.23
4  華中  黑龍江  武漢 2019-09-10  21  8.90

到此這篇關於pandas實現按行選擇的示例代碼的文章就介紹到這瞭,更多相關pandas 按行選擇內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: