是否可以从pandas库中读取源代码并在我自己的函数中使用它?

ves*_*and 1 python pandas

背景:

我想在给定行长度的元素中切片pandas数据帧,并对它们执行计算.

pandas.DataFrame.rolling将允许我这样做,但似乎只有内置函数,如sum()示例中所示df.rolling(2, win_type='triang').sum().我还想绘制这些子集(我可以通过切片和一些For循环来做到这一点,但它有点慢).

我发现了什么:

如何获取Python函数的源代码?我已经知道我可以阅读使用的源代码,pandas.DataFrame.rolling??这将给我这个:

在此输入图像描述

但是试图从这里深入挖掘使用例如rolling??似乎是徒劳的:

在此输入图像描述

那么,是否有可能以pandas.DataFrame.rolling某种方式引用底层函数,或者这是使用Python结束的?我想是的,因为文档声明大熊猫是用Cython或C编写的,但我真的好奇这个,所以我也想在这里问一下这个问题.

谢谢你的任何建议!

Nic*_*ers 5

这不是关于如何阅读源代码的答案,而是关于如何解决您声明的问题:

使用适用于滚动.例如,试试df.rolling(2, win_type='triang').apply(yourfunc, args=(), kwargs={})

来自docs,yourfunc

必须从ndarray输入生成单个值*args和**kwargs传递给函数

这是更好的方法,因为如果不是真的需要你不应该带pandas源并在你的代码中使用它进行复制粘贴和编辑(有一些错误修正,它可能在一段时间内过时等等).在这里,我们可以使用已经实现的自己的功能.