Pandas DataFrame DataFrame.reindex()関数
Minahil Noor
2023年1月30日
-
pandas.DataFrame.reindex()
の構文 -
コード例:
DataFrame.reindex()
-
コード例:列を再インデックスする
DataFrame.reindex()
-
コード例:欠損値を
fill_value
で埋めるDataFrame.reindex()
メソッド -
コード例:
method
パラメータを使用して欠損値を埋めるためのDataFrame.reindex()
Python Pandas DataFrame.reindex()
関数は、DataFrame
のインデックスを変更します。指定された軸のインデックスを変更します。新しいインデックスには値が含まれていません。これらの値を入力するためのオプションのパラメーターを提供します。
pandas.DataFrame.reindex()
の構文
DataFrame.dropna(
labels, index, columns, axis, method, copy, level, fill_value, limit, tolerance
)
パラメーター
labels |
それは新しい配列の名前を含む配列のような構造です。 |
index, columns |
それは新しい配列の名前を含む配列のような構造です。キーワード index または columns を使用して指定する必要があります。 |
axis |
整数 または文字列 です。行または列のいずれかでターゲット軸について通知します。0 または index および 1 または columns を指定できます。 |
method |
このパラメーターは、再インデックスされた DataFrame の欠損値を埋めるメソッドを指定します。 次の 4つの可能性があります: None 、backfill / bfill 、pad / ffill 、nearest 。 これは、 DataFrame または Series が増加または減少するインデックスのシーケンスを持っている場合にのみ適用されます。 |
copy |
ブール。デフォルトでは、True です。新しいオブジェクトを返します。 |
level |
整数または名前です。渡されたマルチインデックスレベルのインデックス値と一致します。 |
fill_value |
スカラー 値を持っています。欠損値を埋めるための値です。 |
limit |
整数です。欠落している値を埋めながら、連続する要素の制限について通知します。 |
tolerance |
完全に一致しない場合の、元のラベルと新しいラベルの違いを示します。 |
戻り値
変更されたインデックスを持つ DataFrame
を返します。
コード例:DataFrame.reindex()
デフォルトでは、軸は 0
、つまり行なので、行のインデックスが再作成されます。
import pandas as pd
dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 75, 4: 95},
'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
'Obtained Marks': {0: 56, 1: 75, 2: 82, 3: 64, 4: 67}})
print(dataframe)
デモ DataFrame
は次のとおりです。
Attendance Name Obtained Marks
0 60 Olivia 56
1 100 John 75
2 80 Laura 82
3 75 Ben 64
4 95 Kevin 67
Python のインデックスは 0 から始まります。DataFrame
のインデックスを再作成し、新しいインデックスは 1 から始まります。
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex([1, 2, 3, 4, 5])
print(dataframe1)
出力:
Attendance Name Obtained Marks
1 100.0 John 75.0
2 80.0 Laura 82.0
3 75.0 Ben 64.0
4 95.0 Kevin 67.0
5 NaN NaN NaN
ここで、5 は新しいインデックスです。したがって、新しいインデックスの値は NaN
です。
コード例:列を再インデックスする DataFrame.reindex()
列のインデックスを再作成するには、2つの方法があります。1つは columns
キーワードでラベルを指定する方法で、もう 1つは axis
パラメータを使用する方法です。良いのは、columns
キーワードでラベルを指定することです。
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex(columns=["Presents", "Name", "Marks"])
print(dataframe1)
出力:
Presents Name Marks
0 NaN Olivia NaN
1 NaN John NaN
2 NaN Laura NaN
3 NaN Ben NaN
4 NaN Kevin NaN
古いインデックスには古い値が割り当てられます。新しいインデックスには NaN
値があります。
また、axis
パラメータを使用して列のインデックスを再作成することもできます。
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex(["Presents", "Name", "Marks"], axis="columns")
print(dataframe1)
コード例:欠損値を fill_value
で埋める DataFrame.reindex()
メソッド
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex([1, 2, 3, 4, 5], fill_value=0)
print(dataframe1)
出力:
Attendance Name Obtained Marks
1 100 John 75
2 80 Laura 82
3 75 Ben 64
4 95 Kevin 67
5 0 0 0
欠損値は 0 で埋められます。
コード例:method
パラメータを使用して欠損値を埋めるための DataFrame.reindex()
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 75, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 56, 1: 75, 2: 82, 3: 64, 4: 67},
}
)
dataframe1 = dataframe.reindex([1, 2, 3, 4, 5], method="ffill")
print(dataframe1)
出力:
Attendance Name Obtained Marks
1 100 John 75
2 80 Laura 82
3 75 Ben 64
4 95 Kevin 67
5 95 Kevin 67
メソッド ffill
は、前方の欠損値を最後に利用可能な値で埋めました。