【发布时间】:2020-10-08 11:54:42
【问题描述】:
基本上,我有一组数据(4 列)对应于实验的各种结果。
第一、二、三列分别为x、y和p;其中p 表示概率P(x, y)。最后一列是p上的错误。
现在,我想找到的是
或者
也就是说,我想对我的数据执行符号积分,因为我想绘制它的结果。
我的一些数据:
x y p ep
0 2.967330 2549.603175 1.0 1.00000
1 2.987216 2549.603175 0.0 0.00000
2 3.007102 2549.603175 0.0 0.00000
3 3.026989 2549.603175 3.0 1.73205
4 3.046875 2549.603175 0.0 0.00000
5 3.066761 2549.603175 4.0 2.00000
6 3.086648 2549.603175 1.0 1.00000
8 3.126420 2549.603175 10.0 3.16228
9 3.146307 2549.603175 24.0 4.89898
10 3.166193 2549.603175 35.0 5.91608
11 3.186080 2549.603175 71.0 8.42615
12 3.205966 2549.603175 118.0 10.86280
13 3.225852 2549.603175 188.0 13.71130
14 3.245739 2549.603175 337.0 18.35760
15 3.265625 2549.603175 475.0 21.79450
16 3.285511 2549.603175 706.0 26.57070
17 3.305398 2549.603175 1093.0 33.06060
18 3.325284 2549.603175 1536.0 39.19180
19 3.345170 2549.603175 2239.0 47.31810
在 x 轴上,数据等距约为 -0.01988637。
在“Python Companion to Data Science”一书中 ” 由 D. Zinoviev 撰写,“部分和大致相当于积分”。我想使用这种部分和方法,但我不知道如何使用。
提前谢谢大家。
问候。
【问题讨论】:
-
你说你想做数值积分,但是如果你想要 \int P(x,y)dx,那将意味着符号积分,因为 y 仍然会保留在结果中。你确定不想要\int\int P(x,y) dx dy?
-
还有一件事:你的数据对我来说很奇怪:如果你有一个函数 P(x,y) 你应该有一个 Nx*Ny 值的二维数组,但是你有 2 个 Nx 的一维数组+Ny 个值(不包括 p 及其误差。)
-
@Feodoran 我的错...它们的等距约为:-0.01988637。 (对于 x)评论你之前关于我的数据形状的问题:我完全同意你的观点,也许我的措辞有点奇怪,因为英语不是我的母语。我的主管(我正在实习)说第三列代表概率 P(x,y) 但是我同意你的观点,但是我拥有的数据集没有以任何方式修改......我应该重塑 P( x,y) 在二维数组上屈服?
-
哦,等等,我刚刚意识到:你所有的 y 值都是相同的。因此,您可以将第一列相加并乘以 dx=0.01988。如果你做 cumsum(),那么你会得到以 x 作为积分上限的定积分(作为 x 的函数)。
-
嗨@BLDMoh,您的集成领域是什么?您有一个函数要在矩形、圆形、三角形、整个域或...上进行积分
标签: python matplotlib numpy-ndarray numerical-integration