【发布时间】:2014-03-10 03:26:04
【问题描述】:
我有一个包含两个变量 x 和 y 的数据集(见下文)。我想找出 x 的哪个值,y 是否出现最大值。我目前的方法是简单地查找给我最大 y 的 x。这并不理想,因为我的数据非常嘈杂,所以我想先进行某种平滑,然后找到最大值。
到目前为止,我已经尝试使用 R 来平滑我的数据,使用 np 包中的 npreg(内核回归)来获得这条曲线:
但我不确定如何找到最大值。
我想用 Python 解决以下问题:
1) 平滑数据(不是核回归)
2) 使用平滑后的数据找出 y 中出现最大值的 x 值
x y
-20 0.006561733
-19 -4.48E-08
-18 -4.48E-08
-17 -4.48E-08
-16 0.003281305
-15 0.00164063
-14 0.003280565
-13 0.003282537
-12 -4.48E-08
-11 0.003281286
-10 0.004921239
-9 0.00491897
-8 -1.52E-06
-7 0.004925867
-6 -1.27E-06
-5 0.009839438
-4 0.001643726
-3 -4.48E-08
-2 2.09E-06
-1 -0.001640027
0 0.006559627
1 0.001636958
2 2.36E-06
3 0.003281469
4 0.011481469
5 0.004922279
6 0.018044207
7 0.011483134
8 0.014765087
9 0.008201379
10 0.00492497
11 0.006560482
12 0.009844796
13 0.011483199
14 0.008202129
15 0.001641621
16 0.004921645
17 0.006563377
18 0.006561068
19 0.008201004
【问题讨论】:
标签: python r statistics max smoothing