当前位置: 首页 > 文档资料 > Pandas 函数手册 >

DataFrame

优质
小牛编辑
130浏览
2023-12-01
函数说明
构造器
DataFrame([data, index, columns, dtype, copy])二维大小可变的、具有标记轴 (行和列) 的潜在异构表格数据结构。
属性和基础数据
轴线
DataFrame.indexDataFrame 的索引 (行标签)。
DataFrame.columnsDataFrame 的列标签。
DataFrame.dtypes返回 DataFrame 中的数据类型。
DataFrame.ftypes返回 DataFrame 中的 ftype (稀疏 / 密集和 dtype 的指示)。
DataFrame.get_dtype_counts()返回此对象中唯一 dtypes 的计数。
DataFrame.get_ftype_counts()(已弃用) 返回此对象中唯一 ftypes 的计数。
DataFrame.select_dtypes([include, exclude])根据列 dtypes 返回 DataFrame 列的子集。
DataFrame.values返回 DataFrame 的 Numpy 表示形式。
DataFrame.get_values()将稀疏值转换为密集值后返回 ndarray。
DataFrame.axes返回表示 DataFrame 轴的列表。
DataFrame.ndim返回一个表示轴 / 数组维数的 int。
DataFrame.size返回一个 int,表示此对象中的元素数。
DataFrame.shape返回表示 DataFrame 维度的元组。
DataFrame.memory_usage([index, deep])以字节为单位返回每列的内存使用情况。
DataFrame.empty指示 DataFrame 是否为空。
DataFrame.is_copy-
转变
DataFrame.astype(dtype[, copy, errors])将 Pandas 对象转换为指定的 dtype dtype。
DataFrame.convert_objects([convert_dates, …])(已弃用) 尝试推断对象列的更好 dtype。
DataFrame.infer_objects()尝试为对象列推断更好的数据类型。
DataFrame.copy([deep])复制此对象的索引和数据。
DataFrame.isna()检测缺失值。
DataFrame.notna()检测现有 (未丢失) 值。
DataFrame.bool()返回单个元素 PandasObject 的布尔。
索引、迭代
DataFrame.head([n])返回前 n 行。
DataFrame.at访问行 / 列标签对的单个值。
DataFrame.iat按整数位置访问行 / 列对的单个值。
DataFrame.loc通过标签或布尔数组访问一组行和列。
DataFrame.iloc用于按位置选择的纯整数位置索引。
DataFrame.insert(loc, column, value[, …])在指定位置将列插入 DataFrame。
DataFrame.insert(loc, column, value[, …])在指定位置将列插入 DataFrame。
DataFrame.iter()迭代信息轴
DataFrame.items()迭代器 (列名,Series) 对。
DataFrame.keys()获取 “信息轴”(有关详细信息,请参阅索引)
DataFrame.iteritems()迭代器 (列名,Series) 对。
DataFrame.iterrows()以 (索引、Series) 对形式迭代 DataFrame 行。
DataFrame.itertuples([index, name])以 namedtpulles 形式迭代 DataFrame 行,索引值作为元组的第一个元素。
DataFrame.lookup(row_labels, col_labels)基于标签的 DataFrame “花式索引” 功能。
DataFrame.pop(item)返回项目并从框架中删除。
DataFrame.tail([n])返回最后 n 行。
DataFrame.xs(key[, axis, level, drop_level])从 Series/DataFrame 返回横截面 (行或列)。
DataFrame.get(key[, default])从给定键 (DataFrame 列、Panel 切片等) 的对象中获取项目。) .
DataFrame.isin(values)返回布尔 DataFrame,显示 DataFrame 中的每个元素是否包含在值中。
DataFrame.where(cond[, other, inplace, …])返回与 self 形状相同的对象,其对应条目来自 self,cond 为 True,否则来自其他。
DataFrame.mask(cond[, other, inplace, axis, …])返回与 self 形状相同的对象,其对应条目来自 self,cond 为 False,否则来自其他。
DataFrame.query(expr[, inplace])使用布尔表达式查询框架的列。
二元算子函数
DataFrame.add(other[, axis, level, fill_value])添加 DataFrame 和其他元素 (二进制运算符 add)。
DataFrame.sub(other[, axis, level, fill_value])DataFrame 和其他元素相减 (二进制运算符 sub)。
DataFrame.mul(other[, axis, level, fill_value])DataFrame 和其他元素的乘法 (二进制运算符 mul)。
DataFrame.div(other[, axis, level, fill_value])DataFrame 和其他元素的浮动划分 (二进制运算符 truediv)。
DataFrame.truediv(other[, axis, level, …])DataFrame 和其他元素的浮动划分 (二进制运算符 truediv)。
DataFrame.floordiv(other[, axis, level, …])DataFrame 和其他元素的整数除法 (二进制运算符 flooddiv)。
DataFrame.mod(other[, axis, level, fill_value])DataFrame 模和其他元素 (二进制运算符 mod)。
DataFrame.pow(other[, axis, level, fill_value])DataFrame 指数幂和其他元素幂 (二元算子幂)。
DataFrame.dot(other)与 DataFrame 或 Series 对象的矩阵乘法。
DataFrame.radd(other[, axis, level, fill_value])添加 DataFrame 和其他元素 (二元运算符 radd)。
DataFrame.rsub(other[, axis, level, fill_value])DataFrame 和其他元素减法 (二进制运算符 rsub)。
DataFrame.rmul(other[, axis, level, fill_value])DataFrame 和其他元素的乘法 (二进制运算符 rmul)。
DataFrame.rdiv(other[, axis, level, fill_value])DataFrame 和其他元素的浮动划分 (二进制运算符 rtruediv)。
DataFrame.rtruediv(other[, axis, level, …])DataFrame 和其他元素的浮动划分 (二进制运算符 rtruediv)。
DataFrame.rfloordiv(other[, axis, level, …])DataFrame 和其他元素的整数除法 (二元运算符 rfloordiv)。
DataFrame.rmod(other[, axis, level, fill_value])DataFrame 模和其他元素 (二进制运算符 rmod)。
DataFrame.rpow(other[, axis, level, fill_value])DataFrame 和其他元素的指数幂 (二元运算符 rpow)。
DataFrame.lt(other[, axis, level])灵活比较方法包装
DataFrame.gt(other[, axis, level])灵活比较方法包装器
DataFrame.le(other[, axis, level])灵活比较方法包装
DataFrame.ge(other[, axis, level])灵活比较方法的包装
DataFrame.ne(other[, axis, level])用于灵活比较方法的包装器
DataFrame.eq(other[, axis, level])灵活比较方法包装器
DataFrame.combine(other, func[, fill_value, …])添加两个 DataFrame 对象,不传播 NaN 值,因此如果某个 (列,时间) 帧缺少一个值,它将默认为另一帧的值 (也可能是 NaN )
DataFrame.combine_first(other)组合两个 DataFrame 对象,并在调用方法的帧中默认为非空值。
功能应用程序,GroupBy & windows
DataFrame.apply(func[, axis, broadcast, …])沿 DataFrame 的轴应用函数。
DataFrame.applymap(func)以元素方式将函数应用于 DataFrame。
DataFrame.pipe(func, args, *kwargs)应用 func (自我, args, * kwargs)
DataFrame.agg(func[, axis])使用指定轴上的一个或多个操作聚合。
DataFrame.aggregate(func[, axis])使用指定轴上的一个或多个操作聚合。
DataFrame.transform(func, args, *kwargs)调用函数生成类似索引的 NDFrame,并返回带有转换值的 NDFrame
DataFrame.groupby([by, axis, level, …])使用映射程序 (dict 或 key 函数,将给定函数应用于组,将结果作为 Series 返回) 或按一 Series 列对 Series 进行分组。
DataFrame.rolling(window[, min_periods, …])提供滚动窗口计算。
DataFrame.expanding([min_periods, center, axis])提供扩展转换。
DataFrame.ewm([com, span, halflife, alpha, …])提供指数加权函数
计算 / 描述统计
DataFrame.abs()返回每个元素具有绝对值的 Series/DataFrame。
DataFrame.all([axis, bool_only, skipna, level])返回 Series 轴或 DataFrame 轴上的所有元素是否为 True。
DataFrame.any([axis, bool_only, skipna, level])返回在请求的轴上是否有任何元素为真。
DataFrame.clip([lower, upper, axis, inplace])输入阈值处的修剪值。
DataFrame.clip_lower(threshold[, axis, inplace])返回值低于阈值的输入副本被截断。
DataFrame.clip_upper(threshold[, axis, inplace])返回截断值大于给定值的输入副本。
DataFrame.compound([axis, skipna, level])返回请求轴值的复合百分比
DataFrame.corr([method, min_periods])计算列的成对相关性,不包括 NA /null 值
DataFrame.corrwith(other[, axis, drop])计算两个 DataFrame 对象的行或列之间的成对相关性。
DataFrame.count([axis, level, numeric_only])对每列或每行的非 NA 单元格进行计数。
DataFrame.cov([min_periods])计算列的成对协方差,不包括 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, …])生成描述性统计数据,总结数据集分布的中心趋势、分散和形状,不包括 NaN 值。
DataFrame.diff([periods, axis])元素的第一离散差。
DataFrame.eval(expr[, inplace])评估描述 DataFrame 列操作的字符串。
DataFrame.kurt([axis, skipna, level, …])使用 Fisher 的峰度定义返回请求轴上的无偏峰度 (正常峰度 = = 0.0)。
DataFrame.kurtosis([axis, skipna, level, …])使用 Fisher 的峰度定义返回请求轴上的无偏峰度 (正常峰度 = = 0.0)。
DataFrame.mad([axis, skipna, level])返回请求轴值的平均绝对偏差
DataFrame.max([axis, skipna, level, …])此方法返回对象中值的最大值。
DataFrame.mean([axis, skipna, level, …])返回请求轴值的平均值
DataFrame.median([axis, skipna, level, …])返回请求轴的值的中间值
DataFrame.min([axis, skipna, level, …])此方法返回对象中值的最小值。
DataFrame.mode([axis, numeric_only])获取每个元素沿选定轴的模式。
DataFrame.pct_change([periods, fill_method, …])当前元素和先前元素之间的百分比变化。
DataFrame.prod([axis, skipna, level, …])返回请求轴值的乘积
DataFrame.product([axis, skipna, level, …])返回请求轴值的乘积
DataFrame.quantile([q, axis, numeric_only, …])在请求轴上给定分位数的返回值,la numpy . 百分位。
DataFrame.rank([axis, method, numeric_only, …])沿轴计算数值数据列 (1 到 n)。
DataFrame.round([decimals])将 DataFrame 舍入到可变小数位数。
DataFrame.sem([axis, skipna, level, ddof, …])返回请求轴上平均值的无偏标准误差。
DataFrame.skew([axis, skipna, level, …])返回由 N - 1 归一化的请求轴上的无偏歪斜
DataFrame.sum([axis, skipna, level, …])返回请求轴的值之和
DataFrame.std([axis, skipna, level, ddof, …])返回要求轴上的样品标准偏差。
DataFrame.var([axis, skipna, level, ddof, …])返回请求轴上的无偏方差。
DataFrame.nunique([axis, dropna])返回在请求轴上有多个不同观察值的 Series。
重新设计 / 选择 / 标签操作
DataFrame.add_prefix(prefix)带字符串前缀的前缀标签。
DataFrame.add_suffix(suffix)带有字符串后缀的后缀标签。
DataFrame.align(other[, join, axis, level, …])将轴上的两个对象与每个轴索引的指定连接方法对齐
DataFrame.at_time(time[, asof])选择一天中特定时间的值 (例如
DataFrame.between_time(start_time, end_time)选择一天中特定时间之间的值 (例如,上午 9 : 00 - 9 : 30)。
DataFrame.drop([labels, axis, index, …])从行或列中删除指定的标签。
DataFrame.drop_duplicates([subset, keep, …])返回删除重复行的 DataFrame,可选地只考虑某些列
DataFrame.duplicated([subset, keep])返回表示重复行的布尔 Series,可选地仅考虑某些列
DataFrame.equals(other)确定两个 NDFrame 对象是否包含相同的元素。
DataFrame.filter([items, like, regex, axis])根据指定索引中的标签子集 DataFrame 的行或列。
DataFrame.first(offset)基于日期偏移对时间 Series 数据初始周期进行细分的便捷方法。
DataFrame.head([n])返回前 n 行。
DataFrame.idxmax([axis, skipna])返回请求轴上首次出现最大值的索引。
DataFrame.idxmin([axis, skipna])返回请求轴上第一次出现最小值的索引。
DataFrame.last(offset)基于日期偏移对时间 Series 数据的最终周期进行细分的便捷方法。
DataFrame.reindex([labels, index, columns, …])用可选的填充逻辑使 DataFrame 符合新索引,将 NA / NaN 放置在前一个索引中没有值的位置。
DataFrame.reindex_axis(labels[, axis, …])使用可选的填充逻辑使输入对象符合新索引,将 NA / NaN 放在先前索引中没有值的位置。
DataFrame.reindex_like(other[, method, …])将具有匹配索引的对象返回给我自己。
DataFrame.rename([mapper, index, columns, …])更改轴标签。
DataFrame.rename_axis(mapper[, axis, copy, …])更改索引或列的名称。
DataFrame.reset_index([level, drop, …])对于具有多级索引的 DataFrame,在索引名称下的列中返回带有标记信息的新 DataFrame,默认为 “level 0”、“level 1” 等。
DataFrame.sample([n, frac, replace, …])从对象轴返回项目的随机样本。
DataFrame.select(crit[, axis])(已弃用) 返回与轴标签匹配条件相对应的数据
DataFrame.set_axis(labels[, axis, inplace])为给定轴指定所需的索引。
DataFrame.set_index(keys[, drop, append, …])使用一个或多个现有列设置 DataFrame 索引 (行标签)。
DataFrame.tail([n])返回最后 n 行。
DataFrame.take(indices[, axis, convert, is_copy])沿轴返回给定位置索引中的元素。
DataFrame.truncate([before, after, axis, copy])在某个索引值前后截断 Series 或 DataFrame。
缺失数据处理
DataFrame.dropna([axis, how, thresh, …])删除缺少的值。
DataFrame.fillna([value, method, axis, …])使用指定的方法填写 NA / NaN 值
DataFrame.replace([to_replace, value, …])将 to _ replace 中给定的值替换为值。
DataFrame.interpolate([method, axis, limit, …])根据不同的方法插值。
整形、分类、转移
DataFrame.pivot([index, columns, values])返回按给定索引 / 列值组织的重新整形 DataFrame。
DataFrame.pivot_table([values, index, …])创建电子表格样式的透视表作为 DataFrame 架。
DataFrame.reorder_levels(order[, axis])使用输入顺序重新排列索引级别。
DataFrame.sort_values(by[, axis, ascending, …])按任一轴的值排序
DataFrame.sort_index([axis, level, …])按标签 (沿轴) 排序对象
DataFrame.nlargest(n, columns[, keep])按列降序返回前 n 行。
DataFrame.nsmallest(n, columns[, keep])获取按列的 n 个最小值排序的 DataFrame 的行。
DataFrame.swaplevel([i, j, axis])交换特定轴上多索引中的级别 I 和 j
DataFrame.stack([level, dropna])将指定级别从列堆叠到索引。
DataFrame.unstack([level, fill_value])枢转 (必须是分层的) 索引标签的级别,返回具有新级别的列标签的 DataFrame,该列标签的最内层由枢转的索引标签组成。
DataFrame.swapaxes(axis1, axis2[, copy])适当交换轴和交换值轴
DataFrame.melt([id_vars, value_vars, …])“取消固定” 从宽格式到长格式的 DataFrame,可选地保留标识符变量集。
DataFrame.squeeze([axis])挤压长度 1 尺寸。
DataFrame.to_panel()(已弃用) 将长 (堆叠) 格式 (DataFrame) 转换为宽 ( 3D、Panel) 格式。
DataFrame.to_xarray()从 Pandas 对象返回 xarray 对象。
DataFrame.T转置索引和列。
DataFrame.transpose(args, *kwargs)转置索引和列。
合并 / 加入 / 合并
DataFrame.append(other[, ignore_index, …])将其他行追加到此帧的末尾,返回一个新对象。
DataFrame.assign(**kwargs)将新列分配给 DataFrame,返回新对象 (副本),新列添加到原始列中。
DataFrame.join(other[, on, how, lsuffix, …])将列与索引或键列上的其他 DataFrame 连接起来。
DataFrame.merge(right[, how, on, left_on, …])通过按列或索引执行数据库样式的联接操作来合并 DataFrame 对象。
DataFrame.update(other[, join, overwrite, …])使用来自另一个 DataFrame 的非 NA 值就地修改。
时间 Series 相关的
DataFrame.asfreq(freq[, method, how, …])将时间 Series 转换为指定频率。
DataFrame.asof(where[, subset])取不带 NaN 的最后一行 (或者在 DataFrame 的情况下,不带 NaN 的最后一行仅考虑列的子集)
DataFrame.shift([periods, freq, axis])按所需周期数移位索引,可选时间频率
DataFrame.slice_shift([periods, axis])相当于移位而不复制数据。
DataFrame.tshift([periods, freq, axis])移动时间索引,使用索引的频率 (如果可用)。
DataFrame.first_valid_index()返回第一个非 NA /null 值的索引。
DataFrame.last_valid_index()返回最后一个非 NA /null 值的索引。
DataFrame.resample(rule[, how, axis, …])时间 Series 频率转换和 Resampling 的便捷方法。
DataFrame.to_period([freq, axis, copy])将 DataFrame 从 DatetimeIndex 转换为所需频率的周期索引 (如果没有通过,则从索引推断)
DataFrame.to_timestamp([freq, how, axis, copy])转换为时间段开始时时间戳的日期时间索引
DataFrame.tz_convert(tz[, axis, level, copy])将 tz 感知轴转换为目标时区。
DataFrame.tz_localize(tz[, axis, level, …])将 tz - naive 时间 Series 本地化为目标时区。
绘图
DataFrame. plot 是表单 DataFrame. plot 的特定绘图方法的可调用方法和命名空间属性。
DataFrame.plot([x, y, kind, ax, ….])DataFrame 绘图存取器和方法
DataFrame.plot.area([x, y])面积图
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])将 DataFrame 列绘制为线。
DataFrame.plot.pie([y])生成饼图。
DataFrame.plot.scatter(x, y[, s, c])创建具有不同标记点大小和颜色的散点图。
DataFrame.boxplot([column, by, ax, …])从 DataFrame 列绘制方框图。
DataFrame.hist([column, by, grid, …])制作 DataFrame 的直方图。
Series 化 / 输入输出 / 转换
DataFrame.from_csv(path[, header, sep, …])(已弃用) 读取 CSV 文件。
DataFrame.from_dict(data[, orient, dtype, …])从数组状或 dict 的 dict 构造 DataFrame。
DataFrame.from_items(items[, columns, orient])(已弃用) 从元组列表中构建 DataFrame
DataFrame.from_records(data[, index, …])将结构化或记录数组转换为 DataFrame
DataFrame.info([verbose, buf, max_cols, …])打印 DataFrame 的简明摘要。
DataFrame.to_parquet(fname[, engine, …])将 DataFrame 写入二进制拼花格式。
DataFrame.to_pickle(path[, compression, …])将对象保存 (Series 化) 到文件中。
DataFrame.to_csv([path_or_buf, sep, na_rep, …])将 DataFrame 写入逗号分隔值 (CSV) 文件
DataFrame.to_hdf(path_or_buf, key, **kwargs)使用 HDFStore 将包含的数据写入 HDF5 文件。
DataFrame.to_sql(name, con[, schema, …])将存储在 DataFrame 中的记录写入 SQL 数据库。
DataFrame.to_dict([orient, into])将 DataFrame 转换为词典。
DataFrame.to_excel(excel_writer[, …])将 DataFrame 写入 excel 工作表
DataFrame.to_json([path_or_buf, orient, …])将对象转换为 JSON 字符串。
DataFrame.to_html([buf, columns, col_space, …])将 DataFrame 渲染为 HTML 表。
DataFrame.to_feather(fname)写出 DataFrame 的二进制羽化格式
DataFrame.to_latex([buf, columns, …])将对象呈现为表格环境表。
DataFrame.to_stata(fname[, convert_dates, …])导出 Stata 二进制 DTA 文件。
DataFrame.to_msgpack([path_or_buf, encoding])msgpack (Series 化) 对象到输入文件路径
DataFrame.to_gbq(destination_table, project_id)将 DataFrame 写入 Google BigQuery 表。
DataFrame.to_records([index, convert_datetime64])将 DataFrame 转换为 NumPy 记录数组。
DataFrame.to_sparse([fill_value, kind])转换为稀疏塔夫兰
DataFrame.to_dense()返回 NDFrame 的密集表示 (相对于稀疏)
DataFrame.to_string([buf, columns, …])将 DataFrame 呈现为控制台友好的表格输出。
DataFrame.to_clipboard([excel, sep])将对象复制到系统剪贴板。
DataFrame.style属性返回 Styler 对象,该对象包含用于构建 DataFrame 架的样式化 HTML 表示的方法。
稀少的
SparseDataFrame.to_coo()将帧内容作为稀疏的 SciPy COO 矩阵返回。