作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 np.piecewise
函数,我想将其转换为可调用函数。
例如,假设我们有:
import numpy as np
x = np.linspace(0,10,1001)
my_func = np.piecewise(x, [x<8, x>=8], [np.sin, np.cos])
我有兴趣制作一个函数 my_callable_func
,它对 my_func 有一些合理的评估。按理说,要么我们只是默认 x
中的前一步,要么我们在连续的 x
值之间使用某种线性近似值。
例如,在这种情况下 x = [0, 0.01, 0.02, ...]
,所以给定 my_new_func(0.015)
,我希望这样返回 np.sin(0.01)
或类似的东西...
最佳答案
您可以简单地将 np.piecewise
调用包装在一个函数定义中,
In [1]: def my_callable_func(x):
...: return np.piecewise(x, [x<8, x>=8], [np.sin, np.cos])
...: my_callable_func(0.015)
Out[1]: array(0.01499943750632809)
原始 x
向量的值无关紧要。这将生成一个 0D numpy 数组,但如果需要,您可以将其转换为 float ,使用 return float(...)
。
关于python - 如何将数组转换为可调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31276585/
我是一名优秀的程序员,十分优秀!