python - 如何编写对 DataFrame 友好的函数

标签 python pandas numpy

最近我一直在从使用 numpy 的 ndarray 切换到 pandas 的 DataFrame 来满足我的数据分析需求。我注意到 numpy 函数似乎可以毫无问题地接受 DataFrame 对象来代替 ndarray。然而,当我尝试使用我编写的许多现有函数来操作 ndarray 时,它们经常在索引操作、广播等方面失败,我被迫传递底层 ndarray 使用 df.values

是否有一些标准的方法或一套指南可以使函数与 DataFrame 兼容? numpy 函数如何适应这两种类型?

最佳答案

我开始深入研究 numpy 源代码,发现许多函数只是先使用 asarray 等函数将输入转换为 ndarrayasanyarray .

def numpyFunction(x, *args, **kwargs):
    x = np.asanyarray(x)
    ...

关于python - 如何编写对 DataFrame 友好的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44656007/

相关文章:

python - 函数调用堆栈 : keras_scratch_graph Error

python - 转置列表列表

python - Pandas 数据框中按键列分组的连续空值的计数

python - 如何使用 for 循环将列值添加到数据框字典中,以便每个数据框都有一个唯一的列?

python - 使用 py2exe 时使用 Numpy 创建一个 tcl 文件夹

python - "a is a is a"比较结果

python - TensorFlow 2.0 dataset.__iter__() 仅在启用即时执行时才受支持

python - 将 pandas DataFrame 中的多列转换为 1 列

python - (a x a) 方阵乘以 (a x c x d) 矩阵

python - 通过 Cython 将 C++ vector 传递给 Numpy,无需自动复制和处理内存管理