栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Python

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python

我测试过的所有建议的方法,加上

np.array(map(f, x))
perfplot
(我的一个小项目)。

消息1:如果可以使用numpy的本机函数,请执行此操作。

如果你想已经矢量化功能的矢量(如

x**2
在原岗位的例子),使用的是多比什么都更快(注意对数标度):

如果你确实需要向量化,那么使用哪种变体并不重要。

复制剧情的代码:

import numpy as npimport perfplotimport mathdef f(x):    # return math.sqrt(x)    return np.sqrt(x)vf = np.vectorize(f)def array_for(x):    return np.array([f(xi) for xi in x])def array_map(x):    return np.array(list(map(f, x)))def fromiter(x):    return np.fromiter((f(xi) for xi in x), x.dtype)def vectorize(x):    return np.vectorize(f)(x)def vectorize_without_init(x):    return vf(x)perfplot.show(    setup=lambda n: np.random.rand(n),    n_range=[2**k for k in range(20)],    kernels=[        f,        array_for, array_map, fromiter, vectorize, vectorize_without_init        ],    xlabel='len(x)',    )


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/375068.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号