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

DataFrame.convert_objects( convert_dates = True,convert_numeric = False,convert_timedeltas = True,copy = True )

尝试推断对象列的更好dtype。

从版本0.21.0开始不推荐使用。

参数

convert_dates :boolean,默认为True

如果为True,请尽可能转换为日期。如果'coerce',强制转换,不可转换的值变为NaT。

convert_numeric : boolean,默认为False

如果为True,则尝试强制转换为数字(包括字符串),不可转换的值变为NaN。

convert_timedeltas : boolean,默认为True

如果为True,请尽可能转换为timedelta。如果'coerce',强制转换,不可转换的值变为NaT。

copy : boolean,默认为True

如果为True,即使不需要复制也不返回副本(例如,没有进行转换)。注意:这是供内部使用的,不应与现场混淆。

返回

converted: 与输入对象相同

例子

>>> df = pd.DataFrame({'int_str':['1', '2'], 'real_str':['a', 'b']})
>>> df.convert_objects(convert_numeric=True)
int_str real_str
0 1 a
1 2 b

DataFrame.compound( axis = None,skipna = None,level = None)

返回请求轴的值的复合百分比。

参数

axis : {index(0),columns(1)}

要应用的功能的轴。

skipna : bool,默认为True

计算结果时排除NA / null值。

level : int或level name,默认为None

如果轴是MultiIndex(分层),则沿特定级别计数,折叠为系列。

numeric_only : bool,默认None

仅包含float,int,boolean列。如果为None,将尝试使用所有内容,然后仅使用数字数据。未针对系列实施。

** kwargs

要传递给函数的其他关键字参数。

返回

compounded: SeriesDataFrame(如果指定了级别)

例子

>>> import pandas as pd
>>> df = pd.DataFrame({'A': [5, 2], 'B': [4, 8]})
>>> print(df.compound())
A 17
B 44
dtype: int64