Python pandas.DataFrame.as_blocks和as_matrix函数方法的使用

Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。本文主要介绍一下Pandas中pandas.DataFrame.as_blocks和as_matrix方法的使用。

DataFrame.as_blocks(copy=True)

将框架转换为dtype ->构造函数类型的dict,每个构造函数类型都有一个同构的dtype。

从0.21.0版开始不推荐使用。

注意:块的dtypes将保存在这里(与as_matrix不同)

参数:

copy boolean, 默认 True

返回:

values : dtype 字典  -> 构造函数类型

DataFrame.as_matrix(columns=None)

将frame转换为它的数字数组表示形式。

从0.23.0版本开始就不提倡使用 DataFrame.values()

参数:

columns : list, 可选, 默认:None

如果 None, 返回所有列, 否则, 返回指定列.

返回:

values : ndarray

如果调用者是异构的,并且包含布尔值或对象,那么结果将是dtype=object. 看Notes.

Notes

返回不是一个数字矩阵,而是一个数字数组。
dtype将是分母较低的dtype(隐式上转换);也就是说,如果混合了dtypes(即使是数值类型),也会选择容纳所有类型的dtypes。如果不处理这些块,请小心使用。
例如,如果dtypefloat16float32,则dtype将向上转换为float32。如果dtypeint32uint8,则dtype将为int32。通过numpy.find_common_type约定,混合int64uint64将得到一个float64dtype
此方法用于向后兼容。通常,建议使用“.values”

推荐阅读
cjavapy编程之路首页