用法:
DataFrame.align(other, join='outer', axis=None, level=None, copy=True, fill_value=None, method=None, limit=None, fill_axis=0, broadcast_axis=None)
使用指定的連接方法將兩個對象在其軸上對齊。
為每個軸索引指定連接方法。
- other: DataFrame 或係列
- join:{‘outer’, ‘inner’, ‘left’, ‘right’},默認 ‘outer’
- axis:其他對象的允許軸,默認無
對齊索引 (0)、列 (1) 或兩者(無)。
- level:int 或級別名稱,默認無
跨級別廣播,匹配傳遞的 MultiIndex 級別上的索引值。
- copy:布爾值,默認為真
總是返回新對象。如果 copy=False 並且不需要重新索引,則返回原始對象。
- fill_value:標量,默認 np.NaN
用於缺失值的值。默認為 NaN,但可以是任何 “compatible” 值。
- method:{‘backfill’, ‘bfill’, ‘pad’, ‘ffill’, 無},默認無
用於填充重新索引係列中的孔的方法:
pad /ffill:將最後一個有效觀察值向前傳播到下一個有效值。
backfill /bfill:使用 NEXT 有效觀察來填補空白。
- limit:整數,默認無
如果指定了方法,則這是向前/向後填充的連續 NaN 值的最大數量。換句話說,如果有超過這個數量的連續 NaN 的間隙,它隻會被部分填充。如果未指定方法,則這是沿整個軸將填充 NaN 的最大條目數。如果不是無,則必須大於 0。
- fill_axis:{0 或 ‘index’,1 或 ‘columns’},默認 0
填充軸、方法和極限。
- broadcast_axis:{0 或 ‘index’,1 或 ‘columns’},默認無
如果對齊兩個不同尺寸的對象,則沿此軸廣播值。
- (left, right):(DataFrame,其他類型)
對齊的對象。
參數:
返回:
例子:
>>> df = pd.DataFrame( ... [[1, 2, 3, 4], [6, 7, 8, 9]], columns=["D", "B", "E", "A"], index=[1, 2] ... ) >>> other = pd.DataFrame( ... [[10, 20, 30, 40], [60, 70, 80, 90], [600, 700, 800, 900]], ... columns=["A", "B", "C", "D"], ... index=[2, 3, 4], ... ) >>> df D B E A 1 1 2 3 4 2 6 7 8 9 >>> other A B C D 2 10 20 30 40 3 60 70 80 90 4 600 700 800 900
在列上對齊:
>>> left, right = df.align(other, join="outer", axis=1) >>> left A B C D E 1 4 2 NaN 1 3 2 9 7 NaN 6 8 >>> right A B C D E 2 10 20 30 40 NaN 3 60 70 80 90 NaN 4 600 700 800 900 NaN
我們還可以在索引上對齊:
>>> left, right = df.align(other, join="outer", axis=0) >>> left D B E A 1 1.0 2.0 3.0 4.0 2 6.0 7.0 8.0 9.0 3 NaN NaN NaN NaN 4 NaN NaN NaN NaN >>> right A B C D 1 NaN NaN NaN NaN 2 10.0 20.0 30.0 40.0 3 60.0 70.0 80.0 90.0 4 600.0 700.0 800.0 900.0
最後,默認的
axis=None
將在索引和列上對齊:>>> left, right = df.align(other, join="outer", axis=None) >>> left A B C D E 1 4.0 2.0 NaN 1.0 3.0 2 9.0 7.0 NaN 6.0 8.0 3 NaN NaN NaN NaN NaN 4 NaN NaN NaN NaN NaN >>> right A B C D E 1 NaN NaN NaN NaN NaN 2 10.0 20.0 30.0 40.0 NaN 3 60.0 70.0 80.0 90.0 NaN 4 600.0 700.0 800.0 900.0 NaN
相關用法
- Python pandas.DataFrame.all用法及代碼示例
- Python pandas.DataFrame.apply用法及代碼示例
- Python pandas.DataFrame.add_prefix用法及代碼示例
- Python pandas.DataFrame.assign用法及代碼示例
- Python pandas.DataFrame.add用法及代碼示例
- Python pandas.DataFrame.at_time用法及代碼示例
- Python pandas.DataFrame.append用法及代碼示例
- Python pandas.DataFrame.at用法及代碼示例
- Python pandas.DataFrame.agg用法及代碼示例
- Python pandas.DataFrame.asfreq用法及代碼示例
- Python pandas.DataFrame.add_suffix用法及代碼示例
- Python pandas.DataFrame.applymap用法及代碼示例
- Python pandas.DataFrame.asof用法及代碼示例
- Python pandas.DataFrame.astype用法及代碼示例
- Python pandas.DataFrame.aggregate用法及代碼示例
- Python pandas.DataFrame.axes用法及代碼示例
- Python pandas.DataFrame.abs用法及代碼示例
- Python pandas.DataFrame.any用法及代碼示例
- Python pandas.DataFrame.ewm用法及代碼示例
- Python pandas.DataFrame.dot用法及代碼示例
注:本文由純淨天空篩選整理自pandas.pydata.org大神的英文原創作品 pandas.DataFrame.align。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。