我想用这个公式来计算E,但是我不确定用numpy.diff模块能不能得到结果,它只能导出4个点。
E
numpy.diff
from numpy import diff x = [395.33, 472.12, 560.45, 652.72, 732.55] y = [0.17, 0.22, 0.28, 0.34, 0.41] E = diff(y) / diff(x) print(E)
输出:
[0.00065113 0.00067927 0.00065027 0.00087686]
af7jpaap1#
期望仅在连续点之间的中间段上计算导数,因此具有比点的数目少一个的值。您期望的内容不清楚,是否要计算gradient?
gradient
import numpy as np E = np.gradient(y, x)
array([0.00065113, 0.00066422, 0.00066508, 0.00077175, 0.00087686])
diff和gradient之间的区别:
diff
更复杂的示例:观察绿色曲线如何精确地是每个段的导数(=斜率),而梯度更平滑(取决于前后的点)
1条答案
按热度按时间af7jpaap1#
期望仅在连续点之间的中间段上计算导数,因此具有比点的数目少一个的值。
您期望的内容不清楚,是否要计算
gradient
?输出:
diff
和gradient
之间的区别:更复杂的示例:
观察绿色曲线如何精确地是每个段的导数(=斜率),而梯度更平滑(取决于前后的点)