您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“pandas如何將DataFrame的列變成行索引”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“pandas如何將DataFrame的列變成行索引”這篇文章吧。
pandas提供了set_index方法可以將DataFrame的列(多列)變成行索引,通過reset_index方法可以將層次化索引的級別會被轉移到列里面。
1、DataFrame的set_index方法
data = pd.DataFrame(np.arange(1,10).reshape(3,3),index=["a","b","c"],columns=["A","B","C"]) print(data) ''' A B C a 1 2 3 b 4 5 6 c 7 8 9 ''' #將列索引為B的列變成data的行索引 print(data.set_index("B")) ''' A C B 2 1 3 5 4 6 8 7 9 ''' #獲取行索引 print(data.set_index("B").index) #Int64Index([2, 5, 8], dtype='int64', name='B') #獲取列索引 print(data.set_index("B").columns) #Index(['A', 'C'], dtype='object') #將列索引為A和C的列變成行索引,層次化索引 print(data.set_index(["A","C"])) ''' B A C 1 3 2 4 6 5 7 9 8 '''
2、DataFrame的reset_index方法
data = pd.DataFrame(np.arange(1,10).reshape(3,3),index=["a","b","c"],columns=["A","B","C"]) print(data) ''' A B C a 1 2 3 b 4 5 6 c 7 8 9 ''' print(data.set_index(["C"])) ''' A B C 3 1 2 6 4 5 9 7 8 ''' #相對于data來說行索引從原來的a、b、c變成了0、1、2 #在使用set_index方法的時候行索引就已經被修改了 print(data.set_index(["C"]).reset_index()) ''' C A B 0 3 1 2 1 6 4 5 2 9 7 8 ''' print(data.index) #Index(['a', 'b', 'c'], dtype='object') print(data.set_index(["C"]).reset_index().index) #RangeIndex(start=0, stop=3, step=1) print(data.set_index(["C"]).reset_index().columns) #Index(['C', 'A', 'B'], dtype='object')
以上是“pandas如何將DataFrame的列變成行索引”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。