我對Python & pandas比較陌生,並且在(分層)索引中掙扎。我已經涵蓋了基礎知識,但是由於更先進的切片和橫切片而丟失了。在熊貓數據框中排除索引行的最有效方法
例如,下面的數據幀
import pandas as pd
import numpy as np
data = pd.DataFrame(np.arange(9).reshape((3, 3)),
index=pd.Index(['Ohio', 'Colorado', 'New York'], name='state'), columns=pd.Index(['one', 'two', 'three'], name='number'))
我要選擇除與指數「科羅拉多」行了一切。對於一個小數據集,我可以這樣做:
data.ix[['Ohio','New York']]
但是,如果唯一索引值的數目很大,那是不切實際的。天真地,我期待一個語法,如
data.ix[['state' != 'Colorado']]
但是,這隻返回第一個記錄'俄亥俄',不返回'紐約'。這個工程,但很麻煩
filter = list(set(data.index.get_level_values(0).unique()) - set(['Colorado']))
data[filter]
肯定會有一個更Pythonic,這樣做的詳細方式?
感謝:即澄清了很多! – dkapitan