Python是進行數據分析的一種出色語言,主要是因為以數據為中心的python軟件包具有奇妙的生態係統。 Pandas是其中的一種,使導入和分析數據更加容易。
Pandas dataframe.reindex_like()
函數向我自己返回一個具有匹配索引的對象。任何不匹配的索引都用NaN
值。
用法:
用法:DataFrame.reindex_like(other, method=None, copy=True, limit=None, tolerance=None)
參數:
other: Object
method:字符串或無
copy:布爾值,默認為True
limit:填充不完全匹配項的最大連續標簽數。
tolerance:不完全匹配時,另一個對象和該對象的標簽之間的最大距離。可以是list-like。
返回:重新編製索引:與輸入相同
範例1:采用reindex_like()
函數查找給定兩個數據幀之間的匹配索引。
注意:我們可以使用任何一種填充方法(例如“ ffill”,“ bfill”)來填充缺失值。
# importing pandas as pd
import pandas as pd
# Creating the first dataframe
df1 = pd.DataFrame({"A":[1, 5, 3, 4, 2],
"B":[3, 2, 4, 3, 4],
"C":[2, 2, 7, 3, 4],
"D":[4, 3, 6, 12, 7]},
index =["A1", "A2", "A3", "A4", "A5"])
# Creating the second dataframe
df2 = pd.DataFrame({"A":[10, 11, 7, 8, 5],
"B":[21, 5, 32, 4, 6],
"C":[11, 21, 23, 7, 9],
"D":[1, 5, 3, 8, 6]},
index =["A1", "A3", "A4", "A7", "A8"])
# Print the first dataframe
df1
# Print the second dataframe
df2
讓我們使用dataframe.reindex_like()
函數查找匹配的索引。
# find matching indexes
df1.reindex_like(df2)
輸出:
注意輸出,不匹配的索引填充為NaN
值,我們可以使用“填充”方法填寫缺少的值。
# filling the missing values using ffill method
df1.reindex_like(df2, method ='ffill')
輸出:
注意,在輸出中,新索引已使用“A5”行填充。
範例2:采用reindex_like()
函數用於匹配兩個 DataFrame 的索引,並限製填充缺失值。
# importing pandas as pd
import pandas as pd
# Creating the first dataframe
df1 = pd.DataFrame({"A":[1, 5, 3, 4, 2],
"B":[3, 2, 4, 3, 4],
"C":[2, 2, 7, 3, 4],
"D":[4, 3, 6, 12, 7]},
index =["A1", "A2", "A3", "A4", "A5"])
# Creating the second dataframe
df2 = pd.DataFrame({"A":[10, 11, 7, 8, 5],
"B":[21, 5, 32, 4, 6],
"F":[11, 21, 23, 7, 9],
"K":[1, 5, 3, 8, 6]},
index =["A1", "A2", "A3", "A4", "A7"])
# matching the indexes
df1.reindex_like(df2)
輸出:
注意輸出,不匹配的索引填充為NaN
值,我們可以使用“填充”方法填寫缺少的值。我們還限製了可以使用limit參數填充的連續不匹配索引的數量。
# match the indexes
# fill the unmatched index using 'ffill' method
# maximum consecutive unmatched indexes to be filled is 1
df.reindex_like(df1, method ='ffill', limit = 1)
輸出:
相關用法
- Python pandas.map()用法及代碼示例
- Python Pandas Series.all()用法及代碼示例
- Python Pandas TimedeltaIndex.max用法及代碼示例
- Python Pandas Series.le()用法及代碼示例
- Python Pandas Series.eq()用法及代碼示例
- Python Pandas Series.ne()用法及代碼示例
- Python Pandas Series.ge()用法及代碼示例
- Python Pandas Series.lt()用法及代碼示例
- Python Pandas Series.abs()用法及代碼示例
- Python Pandas Series.sum()用法及代碼示例
- Python Pandas DataFrame.ix[ ]用法及代碼示例
- Python Pandas dataframe.sub()用法及代碼示例
- Python Pandas Timestamp.day用法及代碼示例
- Python Pandas Series.str.pad()用法及代碼示例
注:本文由純淨天空篩選整理自Shubham__Ranjan大神的英文原創作品 Python | Pandas dataframe.reindex_like()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。