Dracula
发表于 2019-2-4 14:40:54
本帖最后由 Dracula 于 2019-2-4 14:45 编辑
晨枫 发表于 2019-2-4 14:34
有了 μ和 σ想计算峰值就容易了,我的问题是如何从histogram计算log normal的 μ和 σ。看来这也是个办 ...
怎么计算分布参数的问题,你的题目我没看明白,不好说,但是正态分布你会做,log-normal 没有任何本质区别,一样的办法,就是数学公式不一样就是的了。应该不难。
(标准的统计学问题,估计log-normal分布参数也是有公式的,你到网上去查个公式就是的了。)
数值分析
发表于 2019-2-4 14:56:30
本帖最后由 数值分析 于 2019-2-4 15:05 编辑
你应该不用拟合分布函数吧?你只想知道峰值的位置,然后你又知道(或者说你假设)是泊松分布,所以峰值的位置一定是 x=lambda,(这里lambda不一定是整数),那么剩下的就是从样本里推断lambda了,这是个典型的估计啊. 对于泊松分布,lambda正好是期望,所以一般来用样本均值估计期望。
你给每一个板子从最左边顺序编个号,i=0,1,2,3。。。,然后设每块板子i的对应温度样本值xi,,然后计算sum(i*xi)/n [即累加所有的(板号乘以对应温度)然后除以板数】 (因为你的分布曲线可能和泊松分布差一个常数,所以最后结果得scale一下)不就可以了么?当然,这得假设你的histogram真的得长得像泊松分布分布。
视觉错误
发表于 2019-2-4 17:40:34
石化行业的DCS应该Honeywell多吧,这年头不支持OPC的很少了。
数据送到电脑上算,算了以后在送回去。
视觉错误
发表于 2019-2-4 18:02:11
晨枫 发表于 2019-2-4 13:33
唉,MATLAB里有histfit命令,干的正是我要的,可惜没法“偷”过来用啊
我记得MATLAB支持OPC
数值分析
发表于 2019-2-4 18:34:42
数值分析 发表于 2019-2-4 14:56
你应该不用拟合分布函数吧?你只想知道峰值的位置,然后你又知道(或者说你假设)是泊松分布,所以峰值的位 ...
多解释一句scale那块儿。因为泊松分布曲线下面的面积是1,而你的histogram显然不是,所以你的histogram和泊松分布差一个常数。你求出来的lambda的估计要用你histogram的面积归一一下。
小刀
发表于 2019-2-4 20:39:47
可以试试GMM Guassian Mixed Model去拟合统计分布
关中农民
发表于 2019-2-4 21:47:53
晨枫 发表于 2019-2-4 12:30
没人理我?都在忙着吃年夜饭?
@煮酒正熟 @holycow @tanis @关中农民 @老马丁 @Dracula...
晨大,这得数学博士才中啊,额完全外行了,看见这个只能联想到面条{:189:}
Dracula
发表于 2019-2-4 22:07:12
我又看了一下你这个题,终于看明白了。你的问题是一条曲线类似于统计学上Poisson或者log-normal的density function的形状,在这条曲线上你已知坐标是x=1,x=2,... x=20,这20个点的值,你想要知道的是曲线的最大值是在那个点上。不知道我这个理解对不对。
如果我的理解是对的话,这不是个统计学问题。你画的那个也不是histogram,因为histogram的纵坐标是在每个值观测到的sample size,而你的图的纵坐标是温度,不是一回事。因此统计学的书你不用查,查了也没用。解决这个问题最显而易见的办法就是最小二乘法,但应该是没有分析解,你不能用。我好奇的是如果假设假设曲线的形状类似于正态分布的density function,你们是怎么解的,使用最小二乘法应该是一样没有分析解。如果解正态分布有特别的巧妙的办法的话,或许稍微修改一下就可以用到log-normal的情况。
晨枫
发表于 2019-2-4 22:17:54
数值分析 发表于 2019-2-4 00:56
你应该不用拟合分布函数吧?你只想知道峰值的位置,然后你又知道(或者说你假设)是泊松分布,所以峰值的位 ...
这个办法好!回头试一下!我是打算用这个办法当正态分布处理的,没想到也可以相当直接地套到泊松分布。可能这就解决我的问题了!多谢!
晨枫
发表于 2019-2-4 22:20:16
Dracula 发表于 2019-2-4 08:07
我又看了一下你这个题,终于看明白了。你的问题是一条曲线类似于统计学上Poisson或者log-normal的density f ...
对,就是这个意思。我也提到了,不是统计问题,只是“形似”,想看看统计里有没有现成的办法。楼上42楼就是我一开始想到的办法,但只想到那能用于正态分布,正想改造为对数正态,没想到可以直接套泊松。这就好了。
晨枫
发表于 2019-2-4 22:21:02
小刀 发表于 2019-2-4 06:39
可以试试GMM Guassian Mixed Model去拟合统计分布
这个还是太复杂了。用在控制回路里,必须KISS。但还是要谢一个!
晨枫
发表于 2019-2-4 22:23:42
视觉错误 发表于 2019-2-4 03:40
石化行业的DCS应该Honeywell多吧,这年头不支持OPC的很少了。
数据送到电脑上算,算了以后在送回去。 ...
我们有OPC,问题是可靠性。用以下层基本的回路控制一般不用OPC,当机或者“交通堵塞”的后果太大。这是惯例。只有上层的APC可以用OPC,当了就自动shed到基本控制。
晨枫
发表于 2019-2-4 22:25:29
视觉错误 发表于 2019-2-4 04:02
我记得MATLAB支持OPC
是的,我以前还试过用MATLAB C通过OPC与DCS相连,在技术上这是做得到的,但可靠性达不到要求。OPC是不作为可靠的控制信息通道使用的,只能传送点监视数据或者一般数据采集。
晨枫
发表于 2019-2-4 22:26:25
gnomegordon 发表于 2019-2-4 00:39
apologize. 网上搜code太麻烦,还得验证。最好有本书可以翻翻 或者搜library
再次感谢。楼下45楼有好办法,我先试试那个办法,比kernel density简单多了。
晨枫
发表于 2019-2-4 22:26:58
松叶牡丹 发表于 2019-2-4 00:36
晨大辛苦,您太客气了。祝新年快乐!
松叶MM新年快乐!
雨楼
发表于 2019-2-4 22:31:30
晨枫 发表于 2019-2-3 23:46
是我描述得不好。再来一遍。
我有一条样子像泊松分布的温度分布曲线,但只有几个稀疏的点,想用类似泊松 ...
就是正态分布然后在x轴上平移么? 类似Y=(X-a)^2.
Dracula
发表于 2019-2-4 22:33:46
晨枫 发表于 2019-2-4 22:20
对,就是这个意思。我也提到了,不是统计问题,只是“形似”,想看看统计里有没有现成的办法。楼上42楼就 ...
42楼那个办法不对。那是把这当成个统计学的问题来处理,但这不是个统计学问题。你的纵坐标是温度,不是sample size,不能这么用。最明显的是,那个办法解出来的量纲是温度,而你想要的应该是具体是那块板,因此那个解和你想要的没什么关系。
晨枫
发表于 2019-2-4 22:35:21
数值分析 发表于 2019-2-4 04:34
多解释一句scale那块儿。因为泊松分布曲线下面的面积是1,而你的histogram显然不是,所以你的histogram和 ...
多谢!记住了!
其实你说的办法我已经试过。我把正态分布一边的尾巴砍掉,至少外观上接近泊松或者对数正态。只要有峰在,估计出来均值就还不错,越对称越准确,就有点窃喜。但对道理不摸底,不敢放手用。除非在数学上站得住脚,否则在线的时候没人看着,给我乱估一个就完蛋了。现在看来,道理就是你说的,这个办法不只适用于正态分布。曲线只有只有半边的话,就有点悬,这个可以理解。一般到不了这个情况,程序里简单判别一下也不难,另作处理。
雨楼
发表于 2019-2-4 22:37:37
晨枫 发表于 2019-2-4 00:03
咳咳,这个其实不是统计问题,是从有限的温度测量估计温度分布曲线的问题。吸收塔一共20块塔板,每块塔板 ...
1. 20个数据点在分布上有没有规律。比如两头低中间高。
2。规律稳定么?
3。可不可以简化成20个点里找最大值。
4。峰值如果不在采样点(塔板),而在塔板之间,只能按相邻塔板的问题计算温度曲线斜率,然后插值,而其要比较峰值塔板两侧的斜率,取较大的。
晨枫
发表于 2019-2-4 22:38:00
雨楼 发表于 2019-2-4 08:31
就是正态分布然后在x轴上平移么? 类似Y=(X-a)^2.
差不多。我开始也想过用抛物线然后平移,但平移量本身也要最小二乘出来。可能还是可以线性化然后用简单的最小二乘。我来试试看。