gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-04 07:15:33 24 4
gpt4 key购买 nike

背景:

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

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

我发现了什么:

来自 How can I get the source code of a Python function?我了解到我可以使用 pandas.DataFrame.rolling?? 阅读源代码,这会给我这个:

enter image description here

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

enter image description here

那么,是否有可能以某种方式引用 pandas.DataFrame.rolling 的底层函数,或者这是它使用 Python 结束的地方?我猜是因为 docs声明 pandas 是用 Cython 或 C 编写的,但我对此非常好奇,所以我也想在这里问一下。

感谢您的任何建议!

最佳答案

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

使用apply on rolling .例如,尝试 df.rolling(2, win_type='triang').apply(yourfunc, args=(), kwargs={})

来自文档,yourfunc

Must produce a single value from an ndarray input *args and **kwargs are passed to the function

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

关于python - 是否可以从 pandas 库中读取源代码并在我自己的函数中使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48381085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com