pandas不顯示index pandas層級索引

2021-10-13 08:00:19 字數 2403 閱讀 5662

層級索引(hierarchical indexing)

下面建立乙個series, 在輸入索引index時,輸入了由兩個子list組成的list,

第乙個子list是外層索引,第二個list是內層索引。

示例**:

import pandas as pd

import numpy as np

ser_obj = pd.series(np.random.randn(12),index=[

['a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'd', 'd', 'd'],

[0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2]

print(ser_obj)

執行結果:

a 0 0.099174

1 -0.310414

2 -0.558047

b 0 1.742445

1 1.152924

2 -0.725332

c 0 -0.150638

1 0.251660

2 0.063387

d 0 1.080605

1 0.567547

2 -0.154148

dtype: float64

multiindex索引物件

列印這個series的索引型別,顯示是multiindex

直接將索引列印出來,可以看到有levels,和labels兩個資訊。levels表示兩個層級中分別有哪些標籤,labels是每個位置分別是什麼標籤。

示例**:

print(type(ser_obj.index))

print(ser_obj.index)

執行結果:

multiindex(levels=[['a', 'b', 'c', 'd'], [0, 1, 2]],

labels=[[0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3], [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2]])

選取子集

根據索引獲取資料。因為現在有兩層索引,當通過外層索引獲取資料的時候,可以直接利用外層索引的標籤來獲取。

當要通過內層索引獲取資料的時候,在list中傳入兩個元素,前者是表示要選取的外層索引,後者表示要選取的內層索引。

1. 外層選取:

ser_obj['outer_label']

示例**:

# 外層選取

print(ser_obj['c'])

執行結果:

0 -1.362096

1 1.558091

2 -0.452313

dtype: float64

2. 內層選取:

ser_obj[:, 'inner_label']

示例**:

# 內層選取

print(ser_obj[:, 2])

執行結果:

a 0.826662

b 0.015426

c -0.452313

d -0.051063

dtype: float64

常用於分組操作、透視表的生成等

交換分層順序

1. swaplevel()

.swaplevel( )交換內層與外層索引。

示例**:

print(ser_obj.swaplevel())

執行結果:

0 a 0.099174

1 a -0.310414

2 a -0.558047

0 b 1.742445

1 b 1.152924

2 b -0.725332

0 c -0.150638

1 c 0.251660

2 c 0.063387

0 d 1.080605

1 d 0.567547

2 d -0.154148

dtype: float64

交換並排序分層

sort_index()

.sort_index() 先對外層索引進行排序,再對內層索引進行排序,預設是公升序。

示例**:

# 交換並排序分層

print(ser_obj.swaplevel().sort_index())

執行結果:

0 a 0.099174

b 1.742445

c -0.150638

d 1.080605

1 a -0.310414

b 1.152924

c 0.251660

d 0.567547

2 a -0.558047

b -0.725332

c 0.063387

d -0.154148

dtype: float64

div顯示和不顯示 當幾列資料 中顯示或不顯示

都知道用div控制顯示或不顯示 顯示測試 div的style display block 是顯示,即 document.getelementbyid divtest style.display block style display none 是不顯示.即 document.getelementby...

php不顯示頁面 php如何設定不顯示頁面

摘要 php如何設定不顯示頁面 php設定不顯示頁面的方法 首先開啟php配置檔案 php.ini 然後去掉 error reporting 前的分號 接著設定 error reporting e all e notice 最後重啟apache伺服器。php設定不顯示頁面的方法 1 開啟php配置檔...

extjs grid 不顯示表頭

extjs grid 不顯示表頭 搞了一下午,grid就是不顯示表頭。最後,終於發現原因。記錄下,自己學習extjs的歷程。為了美觀,開始我讓div 居中,使grid居中。但把居中去掉就ok,有表頭。原來 一 把頁面中 去掉 url到的頁面也不允許有 二 在上邊是不可以讓td,或div 為 alig...