最近我一直在从使用 numpy 的 ndarray
切换到 pandas 的 DataFrame
来满足我的数据分析需求。我注意到 numpy 函数似乎可以毫无问题地接受 DataFrame
对象来代替 ndarray
。然而,当我尝试使用我编写的许多现有函数来操作 ndarray
时,它们经常在索引操作、广播等方面失败,我被迫传递底层 ndarray
使用 df.values
。
是否有一些标准的方法或一套指南可以使函数与 DataFrame
兼容? numpy 函数如何适应这两种类型?
最佳答案
我开始深入研究 numpy 源代码,发现许多函数只是先使用 asarray
等函数将输入转换为 ndarray
或 asanyarray
.
def numpyFunction(x, *args, **kwargs):
x = np.asanyarray(x)
...
关于python - 如何编写对 DataFrame 友好的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44656007/