日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【pandas】reset_index函数详解

發布時間:2023/12/20 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【pandas】reset_index函数详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參數

  • drop: 重新設置索引后是否將原索引作為新的一列并入DataFrame,默認為False
  • inplace: 是否在原DataFrame上改動,默認為False
  • level: 如果索引(index)有多個列,僅從索引中刪除level指定的列,默認刪除所有列
  • col_level: 如果列名(columns)有多個級別,決定被刪除的索引將插入哪個級別,默認插入第一級
  • col_fill: 如果列名(columns)有多個級別,決定其他級別如何命名
  • 示例

    參數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函数详解的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。