【pandas】reset_index函数详解
生活随笔
收集整理的這篇文章主要介紹了
【pandas】reset_index函数详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
參數
示例
參數drop
False表示重新設置索引后將原索引作為新的一列并入DataFrame,True表示刪除原索引
import pandas as pd import numpy as npdf = pd.DataFrame([('bird', 389.0), ('bird', 24.0), ('mammal', 80.5), ('mammal', np.nan)],index=['falcon', 'parrot', 'lion', 'monkey'], columns=('class', 'max_speed')) print(df) print('\n')df1 = df.reset_index() print(df1) print('\n')df2 = df.reset_index(drop=True) print(df2)輸出:
參數inplace
True表示在原DataFrame上修改,False將修改后的DataFrame作為新的對象返回
import pandas as pd import numpy as npdf = pd.DataFrame([('bird', 389.0), ('bird', 24.0), ('mammal', 80.5), ('mammal', np.nan)],index=['falcon', 'parrot', 'lion', 'monkey'], columns=('class', 'max_speed')) print(df) print('\n')df1 = df.reset_index() print(df1) print('\n')df2 = df.reset_index(inplace=True) print(df2) print('\n') print(df)輸出:
參數level
如果索引有多個列,僅從索引中刪除由level指定的列,默認刪除所有列。輸入整數時表示將index的names中下標為level的索引刪除;輸入為字符串時表示將名字為level的索引刪除
import pandas as pd import numpy as npindex = pd.MultiIndex.from_tuples([('bird', 'falcon'), ('bird', 'parrot'), ('mammal', 'lion'), ('mammal', 'monkey')], names=['class', 'name']) columns = pd.MultiIndex.from_tuples([('speed', 'max'), ('species', 'type')]) df = pd.DataFrame([(389.0, 'fly'), ( 24.0, 'fly'), ( 80.5, 'run'), (np.nan, 'jump')], index=index, columns=columns)print(df) print('\n')df0 = df.reset_index() print(df0) print('\n')df1 = df.reset_index(level=1) print(df1) print('\n')df2 = df.reset_index(level='name') print(df2)輸出:
參數col_level
如果列名(columns)有多個級別,決定被刪除的索引將插入哪個級別,默認插入第一級(col_level=0)
import pandas as pd import numpy as npindex = pd.MultiIndex.from_tuples([('bird', 'falcon'), ('bird', 'parrot'), ('mammal', 'lion'), ('mammal', 'monkey')], names=['class', 'name']) columns = pd.MultiIndex.from_tuples([('speed', 'max'), ('species', 'type')]) df = pd.DataFrame([(389.0, 'fly'), ( 24.0, 'fly'), ( 80.5, 'run'), (np.nan, 'jump')], index=index, columns=columns)print(df) print('\n')df1 = df.reset_index(level=0, col_level=0) print(df1) print('\n')df2 = df.reset_index(level=0, col_level=1) print(df2) print('\n')輸出:
參數col_fill
重置索引時被刪除的索引只能插入一個級別,如果列名(columns)有多個級別,那么這個列的列名的其他級別如何命名就由col_fill決定,默認不做填充,如果傳入None則用被刪除的索引的名字填充
import pandas as pd import numpy as npindex = pd.MultiIndex.from_tuples([('bird', 'falcon'), ('bird', 'parrot'), ('mammal', 'lion'), ('mammal', 'monkey')], names=['class', 'name']) columns = pd.MultiIndex.from_tuples([('speed', 'max'), ('species', 'type')]) df = pd.DataFrame([(389.0, 'fly'), ( 24.0, 'fly'), ( 80.5, 'run'), (np.nan, 'jump')], index=index, columns=columns)print(df) print('\n')df0 = df.reset_index(level=0, col_level=0) print(df0) print('\n')df1 = df.reset_index(level=0, col_level=0, col_fill=None) print(df1) print('\n')df2 = df.reset_index(level=0, col_level=1, col_fill='species') print(df2) print('\n')df3 = df.reset_index(level=0, col_level=0, col_fill='genus') print(df3) print('\n')輸出:
總結
以上是生活随笔為你收集整理的【pandas】reset_index函数详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 获取UUID两种方法
- 下一篇: s:set标签的用法