- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图让更大的代码片段的一部分工作,因此已经提取了问题元素并创建了一个用于测试的迷你代码。
import math
import csv
import pandas as pd
from pandas import DataFrame
print(df)
data= pd.read_csv('miniDF.csv')
df=pd.DataFrame(data, columns=['x'])
df['y']=(12.775*math.exp(-1.494*df['x']))
print(df)
df 中的 x 列是 0.01,0.1,0.5,1.5,2.9 只是模仿我真实 DataFrame 的简单浮点值。如果我在代码中给等式一个单一的“x”值,数学可以正常工作,但是从 DataFrame 中提取 x 值时它不起作用。
X
0 0.01
1 0.05
2 0.10
3 0.15
4 1.00
5 2.90
Traceback (most recent call last):
File "/Users/willhutchins/Desktop/minitest.py", line 11, in <module>
df['y']=(12.775*math.exp(-1.494*df['X']))
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/pandas/core/series.py", line 131, in wrapper
raise TypeError("cannot convert the series to " "{0}".format(str(converter)))
TypeError: cannot convert the series to <class 'float'>
最终,我想像这样使用它:
df['SBTn']=np.where(df['Fr']<=(12.775*math.exp(-1.494*(df['Fr']))),1,df['SBTn'])
假设可以回答第一个问题,是否有人预见到在 np.where 版本中使用它会出现任何问题?
最佳答案
使用 np.exp
处理数组的方法,math.exp
使用标量:
import numpy as np
df['y']=(12.775*np.exp(-1.494*df['x']))
print (df)
x y
0 0.01 12.585560
1 0.05 11.855479
2 0.10 11.002144
3 0.15 10.210230
4 1.00 2.867642
5 2.90 0.167779
您可以在
apply
中循环为
math.exp
,但它更慢:
df['y']=(12.775*df['x'].apply(lambda x: math.exp(-1.494*x)))
print (df)
x y
0 0.01 12.585560
1 0.05 11.855479
2 0.10 11.002144
3 0.15 10.210230
4 1.00 2.867642
5 2.90 0.167779
#6k rows
df = pd.concat([df] * 1000, ignore_index=True)
In [14]: %timeit df['y1']=(12.775*np.exp(-1.494*df['x']))
658 µs ± 19.8 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
In [15]: %timeit df['y2']=(12.775*df['x'].apply(lambda x: math.exp(-1.494*x)))
3.2 ms ± 133 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
关于python-3.x - 无法转换为使用 DataFrame 和 math.exp 时给出的 Float 错误错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63032137/
如果我在 sympy 中使用 simplify() 函数,log((exp(x)+1)/exp(x)) 会简化为 log (1+exp(-x)),但是,当我阅读文档时,简化函数“可能会不必要地慢”,我
我正在创建一个 Validator类(class)。我正在尝试实现 Linq SelectMany我的验证器的扩展方法能够使用 Linq 查询组合表达式并验证最终结果,即使基础值发生变化也是如此。 下
我正在尝试编写一个程序来计算 exp(-x) 和 exp(x) 的泰勒级数最多 200 次迭代,对于大 x。 (exp(x)=1+x+x^2/2+...). 我的程序非常简单,看起来应该可以完美运行。
我正在看书,看到这段代码: public Animal getWinner(List animals) { return animals == null || animals.size() =
我正在将脚本从 matlab 复制到 C++ 函数中。但是,对于 exp 函数,我不断得到不同的结果。例如,以下片段: std::complex final_b = std::exp(std::com
我不太了解 Python,但下面的代码片段结果是 0.367879441171 from math import exp window = 10000 td = 1 print exp(-td/win
为什么/何时使用其中一种?我刚刚遇到了一个问题,我在使用一个时收到警告,而在使用另一个时没有警告。 例子: tableView.tableHeaderView = label; // worked [
这个问题在这里已经有了答案: java.lang.Math.log replaced by intrinsic call, why not java.lang.Math.exp()? (1 个回答)
我正在将一些 Python 代码转换为 C 代码。 下面的复数输出上的 Python NumPy exp (6.12323399574e-17-1j) 为 k=1、l=4。 numpy.exp(-2.
我正在尝试学习或生成任何代码来学习字符串day("26.02.2009") --->给我“星期三” 我需要C#中的静态datefunction。 例如: datetime Str_day= Retur
[编辑:整个事情有一个非常简单的解决方案:矩阵使用单数据类型而不是默认的双数据类型] 我刚刚注意到 matlab 中的一个有点奇怪的(我认为)行为,想知道是什么导致了它。我有一个 10000x500
我创建了一个运行良好的网站,但我想添加干净的 url,如 exp.com/sec1 而不是 exp.com/#sec1,我有点用 History.pushState 实现了它,但是当有人重新加载链接将
我目前正在听一个关于自动语音识别 (ASR) 的讲座。最后一讲是关于矢量量化(VQ)和k最近邻(kNN)以及二叉树和高斯混合模型(GMMs)。 据讲师介绍,VQ只是通过计算GMM的一个近似值来加速GM
在 oracle 中,我们有 exp效用。我们将其用作 exp username/password@database .这里我们可以使用提供主机和端口详细信息来导出到远程数据库表吗?如果是,提供这些的
如何使用 at-exp 来包含 blew 原始字符串: package foo } import ( 我是这样写的,但是不能包含“}”字符: #lang at-exp racket/base
我试图了解 http://gruntthepeon.free.fr/ssemath/sse_mathfun.h 中 exp_ps() 的实现或 http://software-lisc.fbk.eu/
我正在使用模板类 ( Pol ) 来计算多项式,并希望使用成员函数 ( .exp() ) 将多项式 P 转换为其指数 e^P。 重载指数函数工作正常,编译器选择原始指数 exp(double)如果T
在python中,我们说万物皆对象, 例如:表达式x
您认为可以使用多个线程来计算指数函数吗?我有一个代码,瓶颈是 long double expl( long double ) 的计算。所有其余的都已经并行化了。我尝试了几种近似值,但到目前为止没有任何
我正在尝试将 exp(x) 函数扩展为泰勒级数。这是代码: double CalcExp(){ double eps = 0.0000000000000000001; double elem = 1.
我是一名优秀的程序员,十分优秀!