- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我随机选择了这些数字,但这些结果似乎是一致的 --- 浮点指数比整数指数快 25%-50%。这些处理方式有何不同?
In [209]: %timeit -n 100000 -r 100 np.power(3.71242, 7)
100000 loops, best of 100: 3.45 µs per loop
In [210]: %timeit -n 100000 -r 100 np.power(3.71242, 7.0)
100000 loops, best of 100: 1.98 µs per loop
最佳答案
np.power
是一个 universal function (ufunc)。这些函数可用于具有各种不同数据类型的标量和数组,但必须首先检查输入值的类型,以便它们可以确定使用哪个内部循环来生成合适的输出值。
如果输入类型没有映射到 ufunc 的任何预定义循环,ufunc 将尝试 cast the input values to suitable types (除非另有说明)。这种输入值的检查和转换会产生相关的性能成本,解释问题中观察到的时间。
types
ufunc 的属性显示输入数据类型将如何映射到输出数据类型。以下是 np.power
的映射列表:
>>> np.power.types # 'input input -> output'
['bb->b', 'BB->B', 'hh->h', 'HH->H', 'ii->i', 'II->I', 'll->l', 'LL->L', 'qq->q',
'QQ->Q', 'ee->e', 'ff->f', 'dd->d', 'gg->g', 'FF->F', 'DD->D', 'GG->G', 'OO->O']
float 属于字符编码'g'
,Python整数属于'l'
。可以找到这些字符代码的完整列表 here .
请注意,对于此 ufunc,两个输入值的数据类型必须相同。例如,float
和 int
输入数据类型的混合没有映射。
但我们仍然可以为 np.power
提供不同的数据类型,让它将值转换为适当的数据类型。对于 float
和 int
,返回一个 float64
数字:
>>> np.power(3.71242, 7).dtype
dtype('float64')
在上面您可以看到映射到 float64
字符代码 g
的唯一输入是另外两个 g
值:' gg->g'
。
因此,在幕后,np.power(3.71242, 7)
获取了一个 Python float
和一个 Python int
并且必须决定它可以安全地重铸成什么类型。 int
值已安全地提升为浮点类型 g
。然后 ufunc 知道要运行哪个循环并返回另一个 g
值。
出于这个原因,不混合输入数据类型可以为 np.power
带来更好的性能。
关于python - 为什么整数指数的 numpy.power 更慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26770996/
Power Pivot、Power Query 和 Power BI 之间有什么区别?应该如何决定应该使用哪种工具以及何时使用。 最佳答案 电源查询 Power Query 是一种自助式 ETL(提取
在 Microsoft Power Automate 中,使用表达式 utcNow() 可以获得当前日期(和时间)。我正在尝试获取昨天的日期。我尝试了 dateadd(utcNow(), -1) 和类
也许这是一个非常简单的问题,但我试图弄清楚如何做到这一点,因为我有数百列以及手动完成的想法,将它们分成单独的查询然后 append 它们似乎并不非常实用。 我一直在处理一个查询,它以以下格式返回值:
我使用 Power Automate Desktop 创建了一个桌面流程。但我无法安排或让它自动运行。有什么办法吗? 我不希望使用云流和使用网关连接桌面流。我需要在我的台式机本身内自动运行桌面流程。有
我有一个数据集,它在 SQL Server 中进行转换,然后发送到 Power BI。该报告是根据营销人员的规范制定的,因此我无法表现出色(需要漂亮)。 是否有人设置了自动导出 PBI 报告(按特定列
所以我问了一个类似的问题,但我想我应该更普遍地提出这个问题,以获得尽可能多的想法。 我有 Power BI Pro。我的任务是为数百个收件人创建报告,每个报告都针对该特定用户进行个性化设置。 尽管每个
假设我正在将以下内容导入 PowerBI: Date | Quantity |---------------------|------------
我使用 Power Automate Desktop 创建了一个桌面流程。但我无法安排或让它自动运行。有什么办法吗? 我不希望使用云流和使用网关连接桌面流。我需要在我的台式机本身内自动运行桌面流程。有
我在表格中有一列,如下所示 当我使用 Replace Errors 将类型更改为 decimal(类型编号)并将其替换为 0.0 时,此列中的字符串给了我错误。 然后我旋转了专栏帖子,该专栏如下所示:
我对 Power BI 和 Power Automate 非常缺乏经验,如果这个问题有简单的答案(至少我找不到),我深表歉意。 我有一个 python 脚本,它从一些 excel 文件中获取数据,创建
将数据加载到模型后,我需要删除查询步骤。原因是隐藏消息来源,保护我们的专有技术,或者我只是对我所做的事情并不感到自豪;)。 但是当我删除 PQ 连接或更改“加载到”选项时,表格也会从数据模型中消失,并
我在表之间建立了 1 对多的关系,但是当我尝试在数据透视表中使用它时它失败了。我收到通常的黄色消息,说它可能缺乏关系。当我让它尝试检测一个时,它无法找到任何可能的东西,当我检查现有的时,我的就在那里并
我有一个带有标题列(在许多其他列中)的数据列表,并且我有一个 Power BI 参数,例如,值为“a、b、c”。我想要做的是遍历参数的值并删除以这些字符开头的所有行。 例如: Title a b c
有没有什么方法可以将 Power BI 报表部署到 Power BI 报表服务器,而无需手动复制这些文件,将它们上传到服务器,最后逐个报表更改每个报表的数据源连接信息,这在每个报表中都不实用客户网站。
我的数据源中有一个表,该表是从数据库加载的,其中包含带有日期的列。我需要从此列中获取最小值和最大值,并使用值作为参数在 Power BI 中创建另一个(计算的)表。请问我该怎么做?我尝试使用像 Sta
我正在用 Java 编写一个数学应用程序,它使用 Javascript 进行脚本/输入。我希望能够输入 x^2 并让 Java 在发送到 JavaScript 解析器之前将其替换为 pow(x,2)。
有人要求我将 Sharepoint 上的 Excel 在线电子表格中的数据提取到 Power BI 中以创建仪表板 - 没问题,对吧?好吧,“数据点”之一实际上是指示状态的单元格的填充颜色。我进行了一
在 Power Automate 中,我正在调用一个返回此 JSON 的 API: { "status":"200", "Suburbs":[ { "
我想从此页面(和类似页面)抓取数据:https://cereals.ahdb.org.uk/market-data-centre/historical-data/feed-ingredients.as
如何使用 PowerQuery 访问与 PowerQuery 关联的元数据?当将鼠标悬停在右侧“工作簿查询”列表中的查询上时,会显示此数据,显示“上次刷新”等字段。 应用程序:我有一个 Excel 工
我是一名优秀的程序员,十分优秀!