資料框#

建構函式#

DataFrame([資料, 索引, 欄位, 資料類型, 複製])

二維、大小可變、潛在異質的表格資料。

屬性和基礎資料#

DataFrame.index

DataFrame 的索引(列標籤)。

DataFrame.columns

DataFrame 的欄位標籤。

DataFrame.dtypes

傳回 DataFrame 中的資料類型。

DataFrame.info([verbose, buf, max_cols, ...])

列印 DataFrame 的簡潔摘要。

DataFrame.select_dtypes([include, exclude])

根據欄位資料類型傳回 DataFrame 欄位的子集。

DataFrame.values

傳回 DataFrame 的 Numpy 表達式。

DataFrame.axes

傳回表示 DataFrame 軸的清單。

DataFrame.ndim

傳回表示軸/陣列維度的整數。

DataFrame.size

傳回表示此物件中元素數量的整數。

DataFrame.shape

傳回表示 DataFrame 維度的元組。

DataFrame.memory_usage([index, deep])

傳回每個欄位以位元組為單位的記憶體使用量。

DataFrame.empty

指示 Series/DataFrame 是否為空。

DataFrame.set_flags(*[, copy, ...])

傳回具有更新旗標的新物件。

轉換#

DataFrame.astype(dtype[, copy, errors])

將 pandas 物件轉換為指定的資料型態 dtype

DataFrame.convert_dtypes([infer_objects, ...])

使用支援 pd.NA 的資料型態,將欄位轉換為最佳的資料型態。

DataFrame.infer_objects([copy])

嘗試推斷物件欄位的更佳資料型態。

DataFrame.copy([deep])

複製此物件的索引和資料。

DataFrame.bool()

(已棄用) 傳回單一元素 Series 或 DataFrame 的布林值。

索引、反覆運算#

DataFrame.head([n])

傳回前 n 列。

DataFrame.at

存取單一值,搭配列/欄位標籤對。

DataFrame.iat

透過整數位置存取單一值,搭配列/欄位對。

DataFrame.loc

透過標籤或布林陣列存取一組列和欄位。

DataFrame.iloc

(已棄用) 純粹基於整數位置的索引,透過位置選擇。

DataFrame.insert(loc, column, value[, ...])

在指定位置插入欄位至 DataFrame。

DataFrame.__iter__()

迭代資訊軸。

DataFrame.items()

迭代 (欄位名稱、Series) 成對。

DataFrame.keys()

取得「資訊軸」(詳細資訊請參閱索引)。

DataFrame.iterrows()

迭代 DataFrame 列為 (索引、Series) 成對。

DataFrame.itertuples([index, name])

迭代 DataFrame 列為 namedtuples。

DataFrame.pop(item)

傳回項目並從框架中刪除。

DataFrame.tail([n])

傳回最後 n 列。

DataFrame.xs(key[, axis, level, drop_level])

從 Series/DataFrame 傳回橫截面。

DataFrame.get(key[, default])

從物件取得指定金鑰的項目(例如:DataFrame 欄位)。

DataFrame.isin(values)

DataFrame 中的每個元素是否包含在值中。

DataFrame.where(cond[, other, inplace, ...])

替換條件為 False 的值。

DataFrame.mask(cond[, other, inplace, axis, ...])

取代條件為 True 的值。

DataFrame.query(expr, *[, inplace])

使用布林表達式查詢 DataFrame 的欄。

有關 .at.iat.loc.iloc 的詳細資訊,請參閱 索引文件

二元運算子函式#

DataFrame.__add__(other)

取得 DataFrame 和其他資料的加總,逐欄。

DataFrame.add(other[, axis, level, fill_value])

取得資料框和另一個資料的加總,逐元素(二元運算子 add)。

DataFrame.sub(other[, axis, level, fill_value])

取得資料框和另一個資料的減法,逐元素(二元運算子 sub)。

DataFrame.mul(other[, axis, level, fill_value])

取得資料框和其它資料的乘法,逐元素(二元運算子 mul)。

DataFrame.div(other[, axis, level, fill_value])

取得資料框和其它資料的浮點除法,逐元素(二元運算子 truediv)。

DataFrame.truediv(other[, axis, level, ...])

取得資料框和其它資料的浮點除法,逐元素(二元運算子 truediv)。

DataFrame.floordiv(other[, axis, level, ...])

取得資料框和其它資料的整數除法,逐元素(二元運算子 floordiv)。

DataFrame.mod(other[, axis, level, fill_value])

取得資料框和其它資料的模數,逐元素(二元運算子 mod)。

DataFrame.pow(other[, axis, level, fill_value])

取得資料框和其它資料的指數冪,逐元素(二元運算子 pow)。

DataFrame.dot(other)

計算 DataFrame 與 other 之間的矩陣乘法。

DataFrame.radd(other[, axis, level, fill_value])

取得 dataframe 與 other 的加法,逐元素(二元運算子 radd)。

DataFrame.rsub(other[, axis, level, fill_value])

取得 dataframe 與 other 的減法,逐元素(二元運算子 rsub)。

DataFrame.rmul(other[, axis, level, fill_value])

取得 dataframe 與 other 的乘法,逐元素(二元運算子 rmul)。

DataFrame.rdiv(other[, axis, level, fill_value])

取得 dataframe 與 other 的浮點除法,逐元素(二元運算子 rtruediv)。

DataFrame.rtruediv(other[, axis, level, ...])

取得 dataframe 與 other 的浮點除法,逐元素(二元運算子 rtruediv)。

DataFrame.rfloordiv(other[, axis, level, ...])

取得 dataframe 與 other 的整數除法,逐元素(二元運算子 rfloordiv)。

DataFrame.rmod(其他[, 軸, 層級, 填補值])

取得資料框和其他元素的模數,逐元素(二元運算子 rmod)。

DataFrame.rpow(其他[, 軸, 層級, 填補值])

取得資料框和其他元素的指數冪,逐元素(二元運算子 rpow)。

DataFrame.lt(其他[, 軸, 層級])

取得資料框和小於其他元素,逐元素(二元運算子 lt)。

DataFrame.gt(其他[, 軸, 層級])

取得資料框和比其他元素大,逐元素(二元運算子 gt)。

DataFrame.le(其他[, 軸, 層級])

取得資料框和小於或等於其他元素,逐元素(二元運算子 le)。

DataFrame.ge(其他[, 軸, 層級])

取得資料框和比或等於其他元素大,逐元素(二元運算子 ge)。

DataFrame.ne(other[, axis, level])

取得資料框與其他資料不相等的元素,逐一元件(二元運算子 ne)。

DataFrame.eq(other[, axis, level])

取得資料框與其他資料相等的元素,逐一元件(二元運算子 eq)。

DataFrame.combine(other, func[, fill_value, ...])

與另一個資料框執行逐欄合併。

DataFrame.combine_first(other)

使用 other 中相同位置的值更新空值元素。

函式應用、GroupBy 和視窗#

DataFrame.apply(func[, axis, raw, ...])

沿著資料框的軸線套用函式。

DataFrame.map(func[, na_action])

逐一元件對資料框套用函式。

DataFrame.applymap(func[, na_action])

(已棄用)將函式套用至資料框元素。

DataFrame.pipe(func, *args, **kwargs)

套用可預期序列或資料框的可鏈結函式。

DataFrame.agg([func, axis])

使用指定軸上的多個運算進行彙總。

DataFrame.aggregate([func, axis])

使用指定軸上的多個運算進行彙總。

DataFrame.transform(func[, axis])

對 self 呼叫 func,產生與 self 具有相同軸形狀的資料框。

DataFrame.groupby([by, axis, level, ...])

使用對應器或一組欄位序列來群組資料框。

DataFrame.rolling(window[, min_periods, ...])

提供滾動視窗計算。

DataFrame.expanding([min_periods, axis, method])

提供擴充視窗計算。

DataFrame.ewm([com, span, halflife, alpha, ...])

提供指數加權 (EW) 計算。

運算 / 描述性統計#

DataFrame.abs()

傳回一個 Series/DataFrame,其中包含每個元素的絕對數值。

DataFrame.all([axis, bool_only, skipna])

傳回是否所有元素都是 True,可能透過一個軸。

DataFrame.any(*[, axis, bool_only, skipna])

傳回是否有任何元素是 True,可能透過一個軸。

DataFrame.clip([lower, upper, axis, inplace])

在輸入閾值修剪值。

DataFrame.corr([method, min_periods, ...])

計算欄位的成對關聯性,排除 NA/null 值。

DataFrame.corrwith(other[, axis, drop, ...])

計算成對關聯性。

DataFrame.count([axis, numeric_only])

計算每欄或每列的非 NA 儲存格。

DataFrame.cov([min_periods, ddof, numeric_only])

計算欄位的成對共變異數,排除 NA/null 值。

DataFrame.cummax([axis, skipna])

傳回 DataFrame 或 Series 軸上的累積最大值。

DataFrame.cummin([axis, skipna])

傳回 DataFrame 或 Series 軸上的累積最小值。

DataFrame.cumprod([axis, skipna])

傳回 DataFrame 或 Series 軸上的累積乘積。

DataFrame.cumsum([axis, skipna])

傳回 DataFrame 或 Series 軸上的累積總和。

DataFrame.describe([percentiles, include, ...])

產生描述性統計資料。

DataFrame.diff([periods, axis])

元素的第一個離散差分。

DataFrame.eval(expr, *[, inplace])

評估描述 DataFrame 欄位運算的字串。

DataFrame.kurt([axis, skipna, numeric_only])

傳回所要求軸上的無偏峰度。

DataFrame.kurtosis([axis, skipna, numeric_only])

傳回所要求軸上的無偏峰度。

DataFrame.max([axis, skipna, numeric_only])

傳回請求軸上數值的最大值。

DataFrame.mean([axis, skipna, numeric_only])

傳回請求軸上數值的平均值。

DataFrame.median([axis, skipna, numeric_only])

傳回請求軸上數值的中位數。

DataFrame.min([axis, skipna, numeric_only])

傳回請求軸上數值的最小值。

DataFrame.mode([axis, numeric_only, dropna])

取得選取軸上每個元素的眾數。

DataFrame.pct_change([periods, fill_method, ...])

當前元素與先前元素之間的分數變化。

DataFrame.prod([axis, skipna, numeric_only, ...])

傳回在要求軸上值的乘積。

DataFrame.product([axis, skipna, ...])

傳回在要求軸上值的乘積。

DataFrame.quantile([q, axis, numeric_only, ...])

傳回在要求軸上給定分位數的值。

DataFrame.rank([axis, method, numeric_only, ...])

計算沿著軸的數值資料等級(1 到 n)。

DataFrame.round([decimals])

將 DataFrame 四捨五入到變數小數位數。

DataFrame.sem([axis, skipna, ddof, numeric_only])

傳回在要求軸上平均數的無偏標準誤差。

DataFrame.skew([axis, skipna, numeric_only])

傳回在要求軸上的無偏斜度。

DataFrame.sum([axis, skipna, numeric_only, ...])

傳回在要求軸上值的總和。

DataFrame.std([axis, skipna, ddof, numeric_only])

傳回在要求軸上的樣本標準差。

DataFrame.var([axis, skipna, ddof, numeric_only])

傳回請求軸上的無偏方差。

DataFrame.nunique([axis, dropna])

計算指定軸中不同元素的數量。

DataFrame.value_counts([subset, normalize, ...])

傳回包含 Dataframe 中每個不同列頻率的 Series。

重新索引/選取/標籤操作#

DataFrame.add_prefix(prefix[, axis])

使用字串 prefix 為標籤加上字首。

DataFrame.add_suffix(suffix[, axis])

使用字串 suffix 為標籤加上字尾。

DataFrame.align(other[, join, axis, level, ...])

使用指定的合併方法在軸上對齊兩個物件。

DataFrame.at_time(time[, asof, axis])

選取一天中特定時間(例如上午 9:30)的值。

DataFrame.between_time(start_time, end_time)

選取特定時間範圍內的數值(例如,早上 9:00-9:30)。

DataFrame.drop([標籤,軸,索引,...])

從列或欄中刪除指定的標籤。

DataFrame.drop_duplicates([子集,保留,...])

傳回已移除重複列的 DataFrame。

DataFrame.duplicated([子集,保留])

傳回表示重複列的布林序列。

DataFrame.equals(其他)

測試兩個物件是否包含相同的元素。

DataFrame.filter([項目,類似,正規表示式,軸])

根據指定的索引標籤對資料框列或欄進行子集處理。

DataFrame.first(偏移量)

(已棄用)根據日期偏移量選取時間序列資料的初始期間。

DataFrame.head([n])

傳回前 n 列。

DataFrame.idxmax([軸,略過空值,僅數值])

傳回在請求軸上最大值的第一次出現的索引。

DataFrame.idxmin([axis, skipna, numeric_only])

傳回在要求軸上最小值第一次出現的索引。

DataFrame.last(offset)

(已棄用)根據日期偏移選取時間序列資料的最後幾個週期。

DataFrame.reindex([labels, index, columns, ...])

將 DataFrame 調整為新的索引,並使用可選的填補邏輯。

DataFrame.reindex_like(other[, method, ...])

傳回一個與其他物件索引相符的物件。

DataFrame.rename([mapper, index, columns, ...])

重新命名欄位或索引標籤。

DataFrame.rename_axis([mapper, index, ...])

設定索引或欄位的軸名稱。

DataFrame.reset_index([level, drop, ...])

重設索引,或其一個層級。

DataFrame.sample([n, frac, replace, ...])

傳回物件軸上隨機取樣項目。

DataFrame.set_axis(標籤, *[, 軸, 複製])

指定想要的索引至給定軸。

DataFrame.set_index(金鑰, *[, 刪除, 附加, ...])

使用現有欄位設定 DataFrame 索引。

DataFrame.tail([n])

傳回最後 n 列。

DataFrame.take(索引[, 軸])

傳回沿著軸上給定位置索引的元素。

DataFrame.truncate([之前, 之後, 軸, 複製])

在某個索引值之前和之後截斷 Series 或 DataFrame。

遺失資料處理#

DataFrame.backfill(*[, 軸, 原地, ...])

(已棄用)使用下一個有效觀察值填補 NA/NaN 值以填補空白。

DataFrame.bfill(*[, 軸, 原地, 限制, ...])

使用下一個有效觀察值填補 NA/NaN 值以填補空白。

DataFrame.dropna(*[, axis, how, thresh, ...])

移除遺失值。

DataFrame.ffill(*[, axis, inplace, limit, ...])

將 NA/NaN 值填滿,方法是將上一個有效觀察值傳播到下一個有效值。

DataFrame.fillna([value, method, axis, ...])

使用指定的方法填滿 NA/NaN 值。

DataFrame.interpolate([method, axis, limit, ...])

使用內插方法填滿 NaN 值。

DataFrame.isna()

偵測遺失值。

DataFrame.isnull()

DataFrame.isnull 是 DataFrame.isna 的別名。

DataFrame.notna()

偵測現有(非遺失)值。

DataFrame.notnull()

DataFrame.notnull 是 DataFrame.notna 的別名。

DataFrame.pad(*[, axis, inplace, limit, ...])

(已棄用)將 NA/NaN 值填滿,方法是將上一個有效觀察值傳播到下一個有效值。

DataFrame.replace([to_replace, value, ...])

to_replace 中給定的值替換為 value

重新塑形、排序、轉置#

DataFrame.droplevel(層級[, 軸])

傳回已移除要求索引/欄位層級的 Series/DataFrame。

DataFrame.pivot(*, 欄位[, 索引, 值])

傳回已由指定的索引/欄位值重新整理的 DataFrame。

DataFrame.pivot_table([值, 索引, ...])

建立試算表樣式的樞紐資料表,作為 DataFrame。

DataFrame.reorder_levels(順序[, 軸])

使用輸入順序重新排列索引層級。

DataFrame.sort_values(依據, *[, 軸, ...])

依據任一軸的值進行排序。

DataFrame.sort_index(*[, 軸, 層級, ...])

依據標籤對物件進行排序(沿著軸)。

DataFrame.nlargest(n, 欄位[, 保留])

傳回依據 欄位 以遞減順序排序的前 n 列。

DataFrame.nsmallest(n, 欄位[, 保留])

傳回由 columns 依序排列的前 n 列。

DataFrame.swaplevel([i, j, axis])

MultiIndex 中交換層級 i 和 j。

DataFrame.stack([level, dropna, sort, ...])

將指定的層級從欄位堆疊到索引。

DataFrame.unstack([level, fill_value, sort])

樞紐化(necessarily hierarchical)索引標籤的層級。

DataFrame.swapaxes(axis1, axis2[, copy])

(已棄用)交換軸並適當地交換值軸。

DataFrame.melt([id_vars, value_vars, ...])

將 DataFrame 從寬式格式轉換為長式格式,並選擇性地保留已設定的識別碼。

DataFrame.explode(column[, ignore_index])

將類清單的每個元素轉換為一列,並複製索引值。

DataFrame.squeeze([axis])

將 1 維軸物件壓縮成純量。

DataFrame.to_xarray()

從 pandas 物件傳回一個 xarray 物件。

DataFrame.T

DataFrame 的轉置。

DataFrame.transpose(*args[, copy])

轉置索引和欄位。

合併/比較/加入/合併#

DataFrame.assign(**kwargs)

指定 DataFrame 的新欄位。

DataFrame.compare(other[, align_axis, ...])

與另一個 DataFrame 比較並顯示差異。

DataFrame.join(other[, on, how, lsuffix, ...])

加入另一個 DataFrame 的欄位。

DataFrame.merge(right[, how, on, left_on, ...])

使用資料庫樣式加入合併 DataFrame 或命名 Series 物件。

DataFrame.update(other[, join, overwrite, ...])

使用另一個 DataFrame 中的非 NA 值就地修改。

旗標#

旗標指的是 pandas 物件的屬性。資料集的屬性(例如記錄日期、存取的 URL 等)應儲存在 DataFrame.attrs 中。

Flags(obj, *, allows_duplicate_labels)

適用於 pandas 物件的旗標。

元資料#

DataFrame.attrs 是用於儲存此 DataFrame 的全域元資料的字典。

警告

DataFrame.attrs 被視為實驗性質,可能會在未警告的情況下變更。

DataFrame.attrs

此資料集的全域屬性字典。

繪製#

DataFrame.plot 同時是一個可呼叫方法和一個命名空間屬性,用於特定繪製方法,其形式為 DataFrame.plot.<kind>

DataFrame.plot([x, y, kind, ax, ....])

DataFrame 繪製存取器和方法

DataFrame.plot.area([x, y, stacked])

繪製堆疊面積圖。

DataFrame.plot.bar([x, y])

垂直長條圖。

DataFrame.plot.barh([x, y])

繪製水平長條圖。

DataFrame.plot.box([by])

繪製 DataFrame 欄位的箱型圖。

DataFrame.plot.density([bw_method, ind])

使用高斯核產生核密度估計圖。

DataFrame.plot.hexbin(x, y[, C, ...])

產生六角形分組圖。

DataFrame.plot.hist([by, bins])

繪製 DataFrame 欄位的直方圖。

DataFrame.plot.kde([bw_method, ind])

使用高斯核產生核密度估計圖。

DataFrame.plot.line([x, y])

將 Series 或 DataFrame 繪製成線條圖。

DataFrame.plot.pie(**kwargs)

產生圓餅圖。

DataFrame.plot.scatter(x, y[, s, c])

建立散佈圖,並變更標記點的大小和顏色。

DataFrame.boxplot([column, by, ax, ...])

從 DataFrame 欄位建立箱型圖。

DataFrame.hist([column, by, grid, ...])

建立 DataFrame 欄位的直方圖。

稀疏存取器#

稀疏資料型態的特定方法和屬性會提供在 DataFrame.sparse 存取器中。

DataFrame.sparse.density

非稀疏點與總 (稠密) 資料點的比率。

DataFrame.sparse.from_spmatrix(data[, ...])

從 scipy 稀疏矩陣建立新的 DataFrame。

DataFrame.sparse.to_coo()

傳回框架的內容,作為稀疏的 SciPy COO 矩陣。

DataFrame.sparse.to_dense()

將具有稀疏值的 DataFrame 轉換為稠密。

序列化/IO/轉換#

DataFrame.from_dict(data[, orient, dtype, ...])

從陣列相似或字典的字典建立 DataFrame。

DataFrame.from_records(data[, index, ...])

將結構化或記錄的 ndarray 轉換為 DataFrame。

DataFrame.to_orc([path, engine, index, ...])

將 DataFrame 寫入 ORC 格式。

DataFrame.to_parquet([path, engine, ...])

將 DataFrame 寫入二進制 Parquet 格式。

DataFrame.to_pickle(path, *[, compression, ...])

將物件序列化為檔案。

DataFrame.to_csv([path_or_buf, sep, na_rep, ...])

將物件寫入逗號分隔值 (csv) 檔案。

DataFrame.to_hdf(path_or_buf, *, key[, ...])

使用 HDFStore 將包含的資料寫入 HDF5 檔案。

DataFrame.to_sql(name, con, *[, schema, ...])

將儲存在 DataFrame 中的記錄寫入 SQL 資料庫。

DataFrame.to_dict([orient, into, index])

將 DataFrame 轉換為字典。

DataFrame.to_excel(excel_writer, *[, ...])

將物件寫入 Excel 試算表。

DataFrame.to_json([path_or_buf, orient, ...])

將物件轉換為 JSON 字串。

DataFrame.to_html([buf, columns, col_space, ...])

將 DataFrame 呈現為 HTML 表格。

DataFrame.to_feather(path, **kwargs)

將 DataFrame 寫入二進位 Feather 格式。

DataFrame.to_latex([buf, columns, header, ...])

將物件呈現為 LaTeX 表格、長表格或巢狀表格。

DataFrame.to_stata(path, *[, convert_dates, ...])

將 DataFrame 物件匯出為 Stata dta 格式。

DataFrame.to_gbq(destination_table, *[, ...])

(已棄用)將 DataFrame 寫入 Google BigQuery 表格。

DataFrame.to_records([index, column_dtypes, ...])

將 DataFrame 轉換為 NumPy 記錄陣列。

DataFrame.to_string([buf, columns, ...])

將 DataFrame 呈現為友善於主控台的表格輸出。

DataFrame.to_clipboard([, excel, sep])

將物件複製到系統剪貼簿。

DataFrame.to_markdown([buf, mode, index, ...])

以友善於 Markdown 的格式列印 DataFrame。

DataFrame.style

傳回 Styler 物件。

DataFrame.__dataframe__([nan_as_null, ...])

傳回實作交換通訊協定的資料框交換物件。