Pandas的set_index和reset_index用法


set_index():
函數原型:DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)  參數解釋: keys:列標簽或列標簽/數組列表,需要設置為索引的列 drop:默認為True,刪除用作新索引的列 append:默認為False,是否將列附加到現有索引 inplace:默認為False,適當修改DataFrame(不要創建新對象) verify_integrity:默認為false,檢查新索引的副本。否則,請將檢查推遲到必要時進行。將其設置為false將提高該方法的性能。 reset_index(): 函數原型:DataFrame.reset_index(level=None, drop=False, inplace=False, col_level=0, col_fill='') 參數解釋: level:int、str、tuple或list,默認無,僅從索引中刪除給定級別。默認情況下移除所有級別。控制了具體要還原的那個等級的索引  drop:drop為False則索引列會被還原為普通列,否則會丟失 inplace:默認為false,適當修改DataFrame(不要創建新對象) col_level:int或str,默認值為0,如果列有多個級別,則確定將標簽插入到哪個級別。默認情況下,它將插入到第一級。 col_fill:對象,默認‘’,如果列有多個級別,則確定其他級別的命名方式。如果沒有,則重復索引名
import pandas as pd
df = pd.DataFrame({ 'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']})
print (df)
drop_t = df.set_index('A',drop=True, append=False, inplace=False, verify_integrity=False)
print (drop_t)
no_drop_t = df.set_index('A',drop=False, append=False, inplace=False, verify_integrity=False)
print (no_drop_t) 


reset_drop_t = drop_t.reset_index(drop=False) #索引列會被還原為普通列
print(reset_drop_t)
reset_no_drop_t = no_drop_t.reset_index(drop=True) #索引列會被還原為普通列
print(reset_no_drop_t)

 

A B C D

0 A0 B0 C0 D0
1 A1 B1 C1 D1
2 A2 B2 C2 D2
3 A3 B3 C3 D3
B C D
A
A0 B0 C0 D0
A1 B1 C1 D1
A2 B2 C2 D2
A3 B3 C3 D3
A B C D
A
A0 A0 B0 C0 D0
A1 A1 B1 C1 D1
A2 A2 B2 C2 D2
A3 A3 B3 C3 D3
A B C D
0 A0 B0 C0 D0
1 A1 B1 C1 D1
2 A2 B2 C2 D2
3 A3 B3 C3 D3
A B C D
0 A0 B0 C0 D0
1 A1 B1 C1 D1
2 A2 B2 C2 D2
3 A3 B3 C3 D3


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM