为什么numpy.exp在参数是Pandas.Series对象时返回pandas.Series对象?

时间:2014-06-21 06:39:39

标签: python numpy pandas

使用以下python代码:

s = [0, 1, 2, 3]
s_np= randn(5)
s_pd = pd.Series(randn(5))

print s.__class__, " -> ", np.exp(s).__class__
print s_np.__class__, " -> ", np.exp(s_np).__class__
print s_pd.__class__, " -> ", np.exp(s_pd).__class__

我得到了以下输出:

<type 'list'>  ->  <type 'numpy.ndarray'>
<type 'numpy.ndarray'>  ->  <type 'numpy.ndarray'>
<class 'pandas.core.series.Series'>  ->  <class 'pandas.core.series.Series'>

根据np.exp的文件,它应该返回ndarray。但是当参数是pandas Series object时,它显然会返回一个pandas Series对象。

如果我理解正确,numpy甚至不知道Series类,因为它是Pandas构建的较低级别的类。这里发生了什么魔力?

谢谢; - )

0 个答案:

没有答案