con*_*cia 0 python numpy dynamic pandas
当我使用getattr()动态访问 Pandas 数据帧或系列的平均值时,它返回一个 Series.mean 对象。但是,当我df.mean()用来访问平均值时,它返回一个浮点数。
为什么不getattr()返回与普通方法相同的东西?
最小的可重现代码:
import pandas as pd
import numpy as np
s = pd.Series(np.random.randn(5))
print(getattr(s, "mean"))
>>> <bound method Series.mean of
>>> 0 1.158042
>>> 1 -0.586821
>>> 2 -1.976764
>>> 3 1.722072
>>> 4 1.129570
print(s.mean())
>>> dtype: float64>
>>> 0.28921963496328584
Run Code Online (Sandbox Code Playgroud)
我曾经dir(getattr(s, "mean"))试图获得平均值,但无法弄清楚哪个属性(如果有)会让我获得浮点平均值。
| 归档时间: |
|
| 查看次数: |
2120 次 |
| 最近记录: |