1. 程式人生 > >pandas筆記2---reset_index函式drop與inplace引數的理解

pandas筆記2---reset_index函式drop與inplace引數的理解

本文將分為三部分:

1. reset_index函式:

修改排序,否則可能會產生錯誤,所以對DataFrame做完合併,或者做分組聚合(groupby,agg,transform等函式)後,最好做一個
reset_index處理。

2.drop引數的理解:

drop=True: 把原來的索引index列去掉,丟掉。
drop=False:保留原來的索引(以前的可能是亂的)

3. inplace引數的理解:

修改一個物件時:
      inplace=True:不建立新的物件,直接對原始物件進行修改;
      inplace=False:對資料進行修改,建立並返回新的物件承載其修改結果。

我相信如果你是剛剛接觸到這個函式的話,會一臉懵逼的,特別是看到有的例子沒有給inplace引數賦值,有的卻給了,本文會結合程式碼給出合理的解釋。

1. reset_index函式:

import pandas as pd
import sys

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'C': ['C0', 'C1', 'C2', 'C3'],
                    'D'
: ['D0', 'D1', 'D2', 'D3']}) df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'], 'B': ['B4', 'B5', 'B6', 'B7'], 'C': ['C4', 'C5', 'C6', 'C7'], 'D': ['D4', 'D5', 'D6', 'D7']}) df3 = pd.DataFrame({'A': ['A8', 'A9', 'A10', 'A11'], 'B'
: ['B8', 'B9', 'B10', 'B11'], 'C': ['C8', 'C9', 'C10', 'C11'], 'D': ['D8', 'D9', 'D10', 'D11']}) frames = [df1, df2, df3] result = pd.concat(frames)#合併,列不變。

先將就著看。。有空再更