gpt4 book ai didi

python - Python 中的 Arrayfun?

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

我正在尝试将一些代码从 Matlab 转换为 Python。知道我将如何转换这条线吗?我是 python 的新手,以前从未见过 arrayfun。谢谢。非常感激。

 zj=arrayfun(@sigmoid,aj);

最佳答案

您将要使用数值库 numpy每当您处理数字数据时。

其中,名为 arrayfun 的 Matlab 函数只是该函数的矢量化形式。例如

Matlab:

>> a = 1:4

a =

1 2 3 4

>> arrayfun(@sqrt, a)

ans =

1.0000 1.4142 1.7321 2.0000

>> sqrt(a)

ans =

1.0000 1.4142 1.7321 2.0000

而在 numpy 中,你会这样做:

>>> import numpy as np
>>> a = np.arange(4)
>>> np.sqrt(a)
array([ 0. , 1. , 1.41421356, 1.73205081])

大多数函数都可以向量化,sigmoid 也不异常(exception)。例如,如果 sigmoid 定义为 1./(1 + exp(-x)),那么您可以用 Python 编写:

def sigmoid(x):
return 1./(1 + np.exp(-x))

zj = sigmoid(aj)

关于python - Python 中的 Arrayfun?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28844859/

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