收集的问题:
如何用matlab来拟合幂律分布,怎样将拟合值和实际值进行对比,放在一个图中,又如何检验实际数据是否符合拟合函数。
如果不符合,如何来直接判断实际数据服从什么样的函数分布呢
在MATLAB里,对数据进行拟合,在双对数坐标下,看数据是否符合幂律分布,求出幂指数,并绘出图形。-In MATLAB, the pairs of data fitting, in double logarithmic coordinates to see whether the data meet the power-law distribution, find the power index, and draw the graph.以傅雷书信为例:(平移237个单位时间)
“>>”后是输入内容,行开头不含“>>”的是MATLAB运行的结果,“/”后是注释部分
>> x=[ ]; /输入修正的书信间隔时间
>> y=[ ]; /输入累积概率
>> loglog(x,y,'ko') /画出双对数下坐标图(k表示黑色,o表示圆圈)
>> hold on /保留刚才所画图表,以便继续在此图画出拟合直线
>> a=polyfit(log(x),log(y),1) /求拟合直线的参数(一次项和常数项)
a =
-1.0700 5.9525
>> b=2.71828^5.9525 /常数项转化
b =
384.7124
>> x=100:100000;