當創建一個pandas.Series對象,并且設置其index既包含數字型,也包含字符串型時,后續的取子集操作在某些情況下會出錯。
se = pd.Series([1,2], index=[123456789,'1234569'])se[[123456789,'1234569']] #取全集se[['1234569']] #只取字符串類型index的子集se[[123456789]] #只取數字類型index的子集。報錯:IndexError: index 123456789 is out of bounds for axis 1 with size 2解決方法
當不能確定Series對象的index的數據類型,或index存在混合類型時,用.ix取Series對象的子集。
se = pd.Series([1,2], index=[123456789,'1234569'])se.ix[[123456789,'1234569']] #取全集se.ix[['1234569']] #只取字符串類型index的子集se.ix[[123456789]] #只取數字類型index的子集
新聞熱點
疑難解答