1
我有一個MultiIndex類型爲(int,datetime)的DataFrame。我想設置0.0到NaN的列'actual_12b1'的條目,但只有在'begdt'(MultiIndex的第二個級別)是在1998年或之前。經過一些試驗和錯誤,我結束了以下代碼:在MultiIndex的第二級是一個日期Slice數據框
year_start1999 = datetime(year=1999, month=1, day=1).date()
cond1 = data.index.get_level_values('begdt') < year_start1999
cond2 = data.actual_12b1 == 0.0
data.actual_12b1[cond1 * cond2] = np.nan
該代碼的作品,但它似乎過於複雜。由於我是熊貓新手(並且被所有切片/過濾所困惑),我認爲有人可能會提出一種更簡潔的方式來達到同樣的結果。
正是我在找什麼,這是更可讀! – vgregoire