轉換 索引,迭代 運算符 功能應用,分組及窗口 計算/描述統計
重新索引/選擇/標簽操作 缺失數據處理 形狀變換/排序/轉置
組合/加入/合並 時間序列相關 繪圖 序列化/IO/轉換 稀疏
| 方法 | 返回值類型 | 參數 | 說明 |
| DataFrame() | df | data=None | 2D數據或字典 |
| index=None | 索引 | ||
| columns=None | 列標簽 | ||
| dtype=None | 數據類型 | ||
| copy=False | 是否復制數據 | ||
| 屬性及底層數據結構 | |||
| .as_matrix() | ndarray | columns=None | 返回指定列(默認全部) |
| .get_dtype_counts() | 返回dtype的計數結果 | ||
| .get_ftype_counts() | 返回ftype的計數結果 | ||
| .select_dtypes() | df | 選擇或排除指定數據類型的列 | |
| include=None | 標量或list_like, 要選擇的列 | ||
| exclude=None | 標量或list_like, 要排除的列 | ||
| .memory_usage() | Series | df的內存使用情況 | |
| index=True | 索引是否參與計算 | ||
| deep=False | 是否計算df引用的對象的內存使用情況 | ||
| .index | 行標簽 | ||
| .columns | 列標簽 | ||
| .values | ndarray | df的值 | |
| .dtypes | Series | df每一列的數據類型 | |
| .ftypes | Series | 返回df每一列是稀疏還是稠密, 以及數據類型 | |
| .axes | list | 返回 [行標簽, 列標簽] | |
| .ndim | int | 軸數 | |
| .size | int | df的元素數量 | |
| .shape | tuple | df的形狀 | |
| 轉換 (轉到首行) | |||
| .astype() | df | 轉換數據類型 | |
| dtype | np.dtype 或 {列名: np.dtype} | ||
| copy=True | 是否復制基層數據 | ||
| errors='raise' | 'raise': 轉換失敗則報錯 | ||
| 'ignore': 轉換失敗則保留原數據類型 | |||
| **kwargs | 更多關鍵字參數 | ||
| .infer_objects() | df | 試圖推斷更好的dtypes | |
| .copy() | df | 拷貝數據 | |
| deep=True | False: 同賦值號, True: 拷貝數據, 但不會深層拷貝 | ||
| .isnull() | df | 判斷對應位置元素是否是空值, 0.22版本新增.isna() | |
| .notnull() | df | 判斷對應位置元素是否不是空值, 0.22版本新增.notna() | |
| 索引, 迭代 (轉到首行) | |||
| .head() | df | n=5 | 返回前n行 |
| .at[i, c] | 標量 | 基於標簽的訪問器 | |
| .iat[m, n] | 標量 | 基於位置的訪問器 | |
| .loc[i, c] | [i, c] | 基於單個標簽訪問 | |
| [[i1,i2], [c1,c2]] | 基於多個標簽訪問 | ||
| [i1:i2, c1:c2] | 包括邊界 | ||
| [bool_df] | 僅保留True位置的值 | ||
| .iloc[m, n] | 參考.loc, 不過是基於位置的 | ||
| .insert() | df | 新增列 | |
| loc | 要插入的位置[0, len(columns)] | ||
| column | 要設置的列標簽 | ||
| value | 要插入的值 | ||
| allow_duplicates=F | 列標簽是否允許重名 | ||
| .__iter__() | iter | 返回一個列標簽迭代器 | |
| .iteritems() | iter | 返回列迭代器 (列名, Series) | |
| .iterrows() | iter | 返回行迭代器 (索引, Series) | |
| .itertuples() | iter | 返回行迭代器 Pandas(Index=i1, c1=v1, c2=v2, ...) | |
| index=True | 是否返回索引 | ||
| name='Pandas' | |||
| .lookup() | ndarray | 返回 [df.loc[i1,c1], df.loc[i2,c2], ...] | |
| row_labels | [i1, i2, ...] | ||
| col_labels | [c1, c2, ...] | ||
| .pop() | Series | item | 刪除並返回指定列 |
| .tail() | df | n=5 | 返回后n行 |
| .xs() | 返回指定行或列 | ||
| key | 行標簽或列標簽, 可以是Multilndex (c_name or int) | ||
| axis=0 | 軸 | ||
| level=None | 標量或list_like. 指定key是多級索引中的哪幾級 | ||
| drop_level=True | 是否刪除level指定的那幾級索引 | ||
| .isin() | df | 判斷元素是否在values中 | |
| values | list: 判斷所有元素是否在此列表中 | ||
| dict: {c: []} 判斷對應列的值是否在字典對應列表中 | |||
| df: 對應列名, 包含且index相同才返回True | |||
| .where() | df | 把df中不滿足條件的那些值替換為other | |
| cond | 跟df同形狀的bool元素組成的2D數據 | ||
| oter=nan | 標量或df. False對應的值替換為other | ||
| inplace=False | 是否本地修改 | ||
| axis=None | df和other對齊的軸, 另外一個軸按順序對齊 | ||
| level=None | 如有需要, 對齊級別 | ||
| errors='raise' | 此參數目前無效 | ||
| try_cast=False | 嘗試將結果轉換為輸入類型 | ||
| raise_on_error=N | 0.21棄用 | ||
| .mask() | df | 與where相反, 將滿足條件的替換為other | |
| .query() | df | 返回滿足條件的行 | |
| expr | 比如 'c1 > c2' 返回滿足c1>c2的那些行 (也可用@符號調用變量) | ||
| inplace=False | 是否本地修改 | ||
| **kwargs | pandas.eval() | ||
| 運算符 (轉到首行) | |||
| .add() | df | 加法運算, 類似df+other | |
| other | 常量, Series或df | ||
| axis='columns' | {0, 1, 'index', 'columns'}, other為Series時生效 | ||
| level=None | int或name. 在一個級別上廣播 | ||
| fill_value=None | 用來填充缺失值的值, 若兩個df位置都丟失, 結果將會丟失 | ||
| .sub; .mul; div; .truediv; .floordiv; .mod; .pow | - * / / // % ** | ||
| .radd; .rsub; ... | 右側運算, 即 other - df 等 | ||
| .lt ; .gt ; .le ; .ge ; .ne ; .eq | < > <= >= != == | ||
| .combine() | df | 使用自定義函數運算 | |
| other | df | ||
| func | 傳入兩個Series(兩個df的對應列), 返回一個Series | ||
| fill_value=None | 標量 | ||
| overwrite=True | |||
| .combine_first() | df | other | 按照索引求並集, 優先保留左側值 |
| 功能應用, 分組及窗口 (轉到首行) | |||
| .apply() |
df |
對df中的每一行(列)執行操作 | |
| func | 傳入一個Series, 返回一個Series | ||
| axis=0 | 0或'index': 傳入的是列 | ||
| 1或'columns': 傳入的是行 | |||
| broadcast=False | 是否廣播, 對於聚合函數, 返回和傳播值相同大小的對象 | ||
| raw=False | True: 傳入函數的將是ndarray而不是Series(性能更好) | ||
| reduce=None | True: 返回Series(若無法返回Series將返回df), False: 返回df | ||
| args=() | 其它位置參數傳遞給func | ||
| **kwds | 其它關鍵詞參數傳遞給func | ||
| .applymap() | df | 對每一個元素執行func | |
| func | 傳入一個值, 返回一個值 | ||
| .agg[regate]() | df | 對每一列(行)執行某一操作 | |
| func | '內置函數名': 對每一列(行)執行此操作(如'sum') | ||
| function: 要對每一列(行)執行的操作 | |||
| ['內置函數名'] or [function] 對每一列(行)執行多個操作 | |||
| dict: {name: function or functions} 對對應列(行)執行對應操作 | |||
| axis=0 | 0: 對每一列執行操作, 1:對每一行執行操作 | ||
| *args | 傳遞給函數的位置參數 | ||
| **kwargs | 傳遞給函數的關鍵詞參數 | ||
| .transfrom() | df | func | 參考.agg |
| *args | |||
| **kwargs | |||
| .groupby() | obj | 對數據進行分組, 分組后使用sum之類的方法可以計算分組后的結果 | |
| by | [c1, c2]: 選中某些列作為分組標准 | ||
| axis=0 | 軸 | ||
| level=None | 多級索引的級別名稱 | ||
| as_index=True | 分組的列是否作為結果的索引 | ||
| sort=True | |||
| group_keys=True | |||
| squeeze=False | |||
| **kwargs | |||
| .rolling() | obj | 指定窗口, 步長為1移動窗口, 可對窗口中內容分別進行運算, 比如.sum() | |
| windows | 窗口大小(n行/列) | ||
| min_periods=None | 允許的最小窗口 | ||
| freq=None | |||
| center=False | 是否將計算結果放到中心而不是右側 | ||
| win_type=None | 參考scipy.signal(默認所有點均勻加權) | ||
| on=None | 在指定列來計算滾動窗口而不是索引(此列將不參與計算) | ||
| axis=0 | 軸 | ||
| closed=None | |||
| .expanding() | obj | 累計計算, 比如加.sum()累加等 | |
| min_periods=1 | 參考.rolling | ||
| freq=None | |||
| center=False | |||
| axis=0 | |||
| .ewm() | obj | ||
| 計算/描述統計 (轉到首行) | |||
| .abs() | df | 對所有元素求絕對值, 僅適用於全為數字的對象 | |
| .all() | S/df | 判斷每一列(行)是否全為True | |
| axis=None | 軸 | ||
| bool_only=None | 是否僅計算bool類型的值 | ||
| skipna=None | |||
| level=None | 用於指定多級索引 | ||
| **kwargs | |||
| .any() | S/df | 判斷每一列(行)是否存在True (參數同.all) | |
| .clip() | df | 限定取值范圍(范圍外的的將被更新為設定的最小值或最大值) | |
| lower=None | float或array_like. 最小值 | ||
| upper=None | 最大值 | ||
| axis=None | 軸 | ||
| inplace=False | 是否本地修改 | ||
| *args | |||
| **kwargs | |||
| .clip_lower() | df | 同.clip, 但只給出下限 | |
| threshold | 界限值 | ||
| .clip_upper() | df | 同.clip_lower, 但給出的是上限值 | |
| .corr() | df | 計算列的成對相關性, 不包括Na值 | |
| method='pearson' | 'pearson': 標准相關系數 | ||
| 'kendall' | |||
| 'spearman' | |||
| min_periods=1 | |||
| .corrwith() | df | 計算兩個df之間的成對相關系數 | |
| other | df | ||
| axis=0 | 軸 | ||
| drop=False | |||
| .count() | S/df | 統計, 統計非NaN的數量 | |
| axis=0 | 軸 {0 or 'index', 1 or 'columns'} | ||
| level=None | 如果軸是MultiIndex, 則沿指定級別進行計數, 折疊到DataFrame中 | ||
| numeric_only=False | 是否僅對 float, int, bool 類型數據進行統計 | ||
| .cov() | df | 計算列的成對協方差, 不包括NA | |
| min_periods=None | 每列所需的最小觀察次數, 以獲得有效結果 | ||
| .cummax() | df | 下面一個值更新為其上面最大的一個值(即累積最大值) | |
| axis=None | 軸 | ||
| skipna=True | 是否忽略空值, False: Na下面全部被更新為Na | ||
| .cummin() | df | 參考.cummax(), 但更新為累積最小值 | |
| .cumprod() | df | 參考.cummax(), 但更新為累積積 | |
| .cumsum() | df | 參考.cummax(), 但更新為累積和 | |
| .describe() | df | 生成統計描述, count, mean, std, min, max, ... | |
| percentiles=None | 輸出相應的百分位數0~1, 默認 [.25, .5, .75] | ||
| include=None | 返回到結果中的白名單(列) | ||
| 'all': 所有列都將包含在輸出中 | |||
| list_like: 將結果限制為指定類型, np.number顯示數字類型的統計結果, np.object顯示對象類型的統計結果, 'O'顯示字符串類型的統計結果 | |||
| None: 結果將包含所有數字列 | |||
| exclude=None | 從結果中省略的黑名單, list_like or None | ||
| .diff() | df | 下面的值跟上面的差 | |
| periods=1 | 下面值跟上面第 periods 個值的差 | ||
| axis=0 | 軸 | ||
| .eval() | 將字符串轉換為表達式 | ||
| expr | 'a+b': 返回df的a列與b列相加的結果 | ||
| 'c=a+b': 新增一列c為a列與b列相加的結果 | |||
| '1+1': 返回1+1的結果 | |||
| inplace=False | 是否本地修改 | ||
| **kwargs | 更多參數參考pandas.eval() | ||
| .kurt() | S/df | 無偏峰度 | |
| axis=None | 軸 | ||
| skipna=None(True) | 計算時是否排除空值 | ||
| level=None | 如果軸是MultiIndex, 則沿指定級別進行計算, 返回df | ||
| numeric_only=None | 是否僅對 float, int, bool 類型數據進行計算 | ||
| 重新索引/選擇/標簽操作 (轉到首行) | |||
| .add_prefix() | df | prefix | 將列標簽前面加上前綴prefix |
| .add_suffix() | df | suffix | 將列標簽前面加上后綴suffix |
| .align() | tuple | 更新索引並以(df1, df2)的形式返回, 缺失值以nan補全 | |
| other | df或Series | ||
| join='outer' | 'outer': 新索引為s與s2的並集 | ||
| 'inner': 新索引為s與s2的交集 | |||
| 'left' : 新索引為s的索引 | |||
| 'right': 新索引為s2的索引 | |||
| axis=None | 軸 | ||
| level=None | 指定多級索引的級別 | ||
| copy=True | 是否返回新對象 | ||
| fill_value=None | 缺失值使用的值, 默認為np.nan | ||
| method=None | |||
| limit=None | |||
| fill_axis=0 | |||
| broadcast_axis=N | 沿該軸廣播 | ||
| .drop() | df | 刪除對應索引或標簽 | |
| labels=None | 要刪除的行(列), 單一標簽或list_like | ||
| axis=0 | 軸 | ||
| index=None | 0.21新增, 相當於(label, axis=0) | ||
| columns=None | 0.21新增, 相當於(label, axis=1) | ||
| level=None | 指定多級索引的級別 | ||
| inplace=False | 是否本地修改 | ||
| errors='raise' | 'ignore': 忽略錯誤 | ||
| .drop_duplicates() | df | 刪除重復項 | |
| subset=None | 列標簽或標簽序列, 只考慮識別選中列的重復項, 默認所有列 | ||
| keep='first' | 'first': 僅保留第一次出現的副本(默認) | ||
| 'last': 刪除重復項, 但最后一項除外 | |||
| False: 刪除所有重復項 | |||
| inplace=False | 是否本地修改 | ||
| .duplicated() | df | 返回是否是重復項的bool表示結果 | |
| subset=None | 列標簽或標簽序列, 只考慮識別選中列的重復項, 默認所有列 | ||
| keep='first' | 'first': 除第一次出現外, 標記重復為True | ||
| 'last': 除了最后一次出現, 標記重復為True | |||
| False: 將所有重復項標記為True | |||
| .equals() | bool | other | 判斷兩個df中的元素是否相同, 同位置的nan被識別為相同 |
| .filter() | df | 子集查詢 | |
| items=None | list_like: [index or columns] | ||
| like=None | string: 保留含有此字符串的那些 columns or index | ||
| regex=None | 使用正則匹配 | ||
| axis=None | 軸, 默認為columns | ||
| .first() | df | 基於時間的子集查詢 | |
| offset | '10D': 表示取出前10天的數據 | ||
| .head() | df | n=5 | 顯示前n條數據 |
| .idxmax() | Series | 返回請求軸上最大值對應的索引(或標簽) | |
| axis=0 | 默認返回每一列最大值對應的索引, 標簽作為索引, 查找到的索引作為值 | ||
| skipna=True | 是否排除空值 | ||
| .idxmin() | Series | 同上不過是最小值 | |
| .last() | df | 同.first(), 不過是后n天 | |
| .reindex() | df | 根據新索引/標簽返回數據, 原數據中存在的索引/標簽對應的值將被返回, 新的索引/標簽對應的值默認為nan | |
| labels=None | 新的標簽/索引, 根據axis值來定, 默認索引 | ||
| index=None | 新索引 | ||
| columns=None | 新標簽 | ||
| axis=None | 軸 | ||
| method=None | {None, ‘backfill’/’bfill’, ‘pad’/’ffill’, ‘nearest’}: 填充方法 | ||
| copy=True | 是否返回一個新對象 | ||
| level=None | 索引/標簽級別 | ||
| fill_value=nan | 缺失值填充 | ||
| limit=None | 向前或向后填充的連續最大填充次數 | ||
| tolerance=None | 公差??? | ||
| .reindex_axis() | df | 同 reindex() 不過沒有 index 和 columns 參數 | |
| .reindex_like() | df | 新對象的 索引/標簽 同傳入的df的 索引/標簽 相同 | |
| other | 傳入的df | ||
| method, copy, limit, tolerance | |||
| .rename() | df | 更改 索引/標簽 名 | |
| mapper=None | fun, dict-like: 結合axis使用, 表示 索引/標簽 | ||
| index=None | 更改索引 | ||
| columns=None | 更改標簽 | ||
| axis=None | 軸 | ||
| copy=True | 是否生成新對象 | ||
| inplace=False | 是否本地修改 | ||
| level=None | 多級索引的操作級別 | ||
| .rename_axis() | df | 同上: mapper, axis=0, copy, inplace | |
| .reset_index() | df | 將索引作為df中的一列值 | |
| level=None | 多級索引, 操作的索引級別 | ||
| drop=False | 是否刪除索引轉換出來的列 | ||
| inplace=False | 是否本地修改 | ||
| col_level=0 | 如果columns是多級的, 轉換出來的列的標簽名的級別 | ||
| col_fill='' | 指定多級索引其它級別的name, None表示重復索引名 | ||
| .sample() | df | 隨機返回n個樣本 | |
| n=None | 返回的項目數, 默認1 | ||
| frac=None | 返回的百分比, 0.0-1.0, 不能與n同時使用 | ||
| replace=False | 是否允許重復 | ||
| weights=None | None: 等概率加權 | ||
| Series: 相同索引的被設置為對應權重, 未出現的被設置為0 | |||
| random_state=None | 隨機數種子 | ||
| axis=None | 軸, 默認為0 | ||
| .select() | df | 返回滿足條件的數據 | |
| crit | function: 在每個 索引/標簽 上調用, 返回 bool 的函數 | ||
| axis=0 | 軸 | ||
| .set_index() | df | 將某些列作為索引 | |
| keys | column, [columns], [[跟df等長的其它來源索引]] | ||
| drop=True | 是否刪除作為索引的那些列 | ||
| append=False | 是否將列追加到現有索引 | ||
| inplace=False | 是否本地修改 | ||
| verify_integrity=False | 是否檢查新索引, False會直到需要時再檢查 | ||
| .tail() | df | n=5 | 返回最后n行 |
| .take() | df | 返回指定行/列 | |
| indices | [int]: 返回指定的那些行/列 | ||
| axis=0 | 行/列 | ||
| convert=None | 是否允許使用負指數, 默認True, 0.21.0 被取消, 始終允許 | ||
| is_copy=True | 是否返回原始對象的副本 | ||
| **kwargs | |||
| .truncate() | 截取兩個 索引/標簽 之間的數據 | ||
| before=None | 截斷此值之前的所有數據 | ||
| after=None | 截斷此值之后的所有數據 | ||
| axis=None | 軸, 默認操作索引 | ||
| copy=True | 是否拷貝 | ||
| 缺失數據處理 (轉到首行) | |||
| .dropna() | df | 刪除含有na的行(列) | |
| axis=0 | 軸 | ||
| how='any' | {'any', 'all'} | ||
| thresh=None | 有效值個數, 有效值低於此值的行(列)被刪除 | ||
| subset=None | list_like. 列(行)標簽列表, 只考慮列表中的列(行) | ||
| inplace=False | 是否本地修改 | ||
| .fillna() | df | 使用指定方法填充空值 | |
| value=None | 標量: 使用此值替換na值 | ||
| dict/Series: 對應標簽的列按照對應的值填充 | |||
| df: 對應為值的值填充對應位置 | |||
| method=None | {‘backfill’, ‘bfill’, ‘pad’, ‘ffill’, None} | ||
| axis=None | {0 or ‘index’, 1 or ‘columns’} | ||
| inplace=False | 是否本地修改 | ||
| limit=None | 每行(列)最大填充次數 | ||
| downcast=None | |||
| **kwargs | |||
| .replace() | df | 將to_replace中給出的值替換為value | |
| to_replace=None | str: 字符串精確匹配 | ||
| regex: 正則表達式匹配 | |||
| list: 若value也是list則需相同長度, 一一對應替換 | |||
| dict: | |||
| None: | |||
| value=None | 參考.fillna | ||
| inplace=False | 是否本地修改 | ||
| limit=None | 每行(列)最大填充次數 | ||
| regex=False | True: 將to_replace作為正則表達式解析 | ||
| method='pad' | {‘backfill’, ‘bfill’, ‘pad’, ‘ffill’, None} | ||
| axis=None | {0 or ‘index’, 1 or ‘columns’} | ||
| 形狀變換, 排序, 轉置 (轉到首行) | |||
| .pivot() | df | 重新整形數據(數據透視表), 參考pd.pivot() | |
| index=None | 作為索引的列 | ||
| columns=None | 作為列標簽的列 | ||
| values=None | 作為值的列 | ||
| .reorder_levels() | new obj | 對對及索引進行重排 | |
| order | [str or int]: 按指定順序對索引進行重排, 不能遺漏和重復 | ||
| axis=0 | 對哪里進行重排 | ||
| .sort_values() | df | 按值排序 0.17.0 | |
| by | str or list of str: 在這些列上排序 | ||
| axis=0 | {0 or ‘index’, 1 or ‘columns’}: 默認按行排序 | ||
| ascending=True | bool or bools: 是否按升序排序, 如果是bools則長度需和by相同 | ||
| inplace=False | 是否在本地修改 | ||
| kind='quicksort' | {‘quicksort’, ‘mergesort’, ‘heapsort’}: 排序算法, 其它算法只支持單列 | ||
| na_position='last' | {‘first’, ‘last’}: 空值放在開頭或結尾(默認放在結尾) | ||
| .sort_index() | df | 對索引或列標簽排序 | |
| axis=0 | 默認對索引進行排序 | ||
| level=None | int or level name or list: 需要排序的索引級別 | ||
| ascending=True | 是否升序排序 | ||
| inplace=False | 是否本地修改 | ||
| kind='quicksort' | 排序算法 | ||
| na_position='last' | {‘first’, ‘last’}: 空值放在開頭或結尾(默認放在結尾) | ||
| sort_remaining=True | 按指定級別排序后是否對其他級別進行排序(按順序) | ||
| by=None | 無效參數?? | ||
| .nlargest() | df | 對指定列進行降序排序並截取n個, 可結合groupby使用 | |
| n | int: 截取的個數 | ||
| columns | list or str: 指定降序排序的列 | ||
| keep='first' | {‘first’, ‘last’}: 對於重復值保留第一次(或最后一次)出現的 | ||
| .nsmallest() | df | 同 .nlargest() 不過是升序排序 | |
| .swaplevel() | new obj | 對指定的兩個索引級別進行交換 | |
| i=-2, j=-1 | int, string | ||
| axis=0 | 對index還是對columns執行 | ||
| .stack() | df/S | 索引作為前n級索引, 最后一級columns作為第n+1級索引, 剩余columns作為新columns | |
| level=-1 | int, string, list: 指定堆疊到索引的columns的級別 | ||
| dropna=True | 是否刪除沒有有效值的行 | ||
| .unstack() | df/S | 將多級索引拆成新 index 和 columns | |
| level=-1 | int, string, list: 要作為columns的索引級別 | ||
| fill_value=None | 缺失值填充 | ||
| .melt() | df | 將columns作為某列值 | |
| id_vars=None | 作為id的列, 保持不變 | ||
| value_vars=None | 作為值的列 | ||
| var_name=None | 默認 'variable' columns名生成的列的列名 | ||
| value_name='value' | 值列的列名 | ||
| col_level=None | 如果columns是多級的則使用此指定級別進行操作 | ||
| .T | df | 轉置 | |
| .to_panel() | Panel | 將df轉換為 3D 的Panel | |
| .to_xarray() | ??? | ||
| .transpose() | df | *args, **kwargs | 轉置 |
| 組合/加入/合並 (轉到首行) | |||
| .append() | df | 追按照列標簽進行追加操作, 缺失使用nan填充 | |
| other | df | ||
| ignore_index=F | 是否不使用索引標簽 | ||
| verify_integrity=F | 是否不允許存在重復索引 | ||
| .assign() | df | 新增列 | |
| **kwargs | 列名 = func : 傳入df, 返回一列值的函數 | ||
| 列名 = 標量: 此列值都為此標量 | |||
| 列名 = list_like : 跟df同長度 | |||
| 列名 = Series : Series中跟df索引相同的作為新列的值, 缺失nan | |||
| .join() | df | 新增列 | |
| other | df: 列標簽不能跟左側df重復(重復的話需設置suffix) | ||
| Series: 需要有name屬性 | |||
| list: [df] | |||
| on=None | 列名, 與右側df索引對齊的列而不是索引 | ||
| how='left' | 'left': 新df的索引參照左側df | ||
| 'right': 新df的索引參照右側df | |||
| 'outer': 新df的索引參照兩個df索引的並集 | |||
| 'inner': 新df的索引參照兩個df索引的交集 | |||
| lsuffix='' | 若列標簽重復, 左側df的標簽將被加上后綴 | ||
| rsuffix='' | 若列標簽重復, 右側df的標簽將被加上后綴 | ||
| sort=False | 是否對結果按照索引排序 | ||
| .merge() | df | 可實現根據左右df某兩列的值進行合並 | |
| right | df | ||
| how='inner' | 參考.join | ||
| on=None | 左右兩個df都存在的列, 將在此列上合並 | ||
| left_on=None | 左側df要與右側df要對齊的列 | ||
| right_on=None | 右側df要與左側df要對齊的列 | ||
| left_index=False | 左側df是否使用索引與右側對齊 | ||
| right_index=False | 右側df是否使用索引與左側對齊 | ||
| sort=False | 結果是否按照索引排序 | ||
| suffixes=('_x','_y') | 重復列后綴 | ||
| copy=True | 是否生成新對象 | ||
| indicator=False | 是否顯示此行數據來源('left_only', 'right_only', 'both') | ||
| True: 此列標簽將被設置為'_merge' | |||
| str: 設置此列標簽為此字符串 | |||
| validate=None | 0.21新增 | ||
| .update() | df | 將左側df相應列相同索引的值更新為右側的值, 不存在則保留原值(本地修改) | |
| other | df, 有name屬性的Series | ||
| join='left' | 無其它取值, 此參數不能被設置為其它值 | ||
| overwrite=True | 覆蓋????? | ||
| filter_func=None | |||
| raise_conflict=F | 若兩個df存在同一數據來源, 將報錯 | ||
| 時間序列相關 (轉到首行) | |||
| 繪圖 (轉到首行) | |||
| 序列化/IO/轉換 (轉到首行) | |||
| 稀疏 (轉到首行) | |||
