我确信这很容易,但是我一直在试图找出如何在R中做到这一点.
我有一些数据,我试图适应幂律分布.为此,您需要在对数日志累积概率图表上绘制数据.y轴是数据频率的LOG(如果您愿意,则为对数概率),x轴是值的对数.如果它是直线,则它符合幂律分布,并且梯度确定幂律参数.
如果我想要数据的频率,我可以使用ecdf()函数:
我的数据集叫做Profits.negative,它只是一长串的交易利润小于零(我将它们全部转换为正数以避免以后记录问题).
所以我可以输入
plot(ecdf(Profits.negative))
Run Code Online (Sandbox Code Playgroud)
我得到了一个方便的经验CDF功能.我需要做的就是将两个轴转换为对数刻度.我可以做x轴:
Profits.negative.logs <- log(Profits.negative)
plot(ecdf(Profits.negative.logs))
Run Code Online (Sandbox Code Playgroud)
差不多了!我只需要弄清楚如何记录y轴!但我似乎无法做到这一点,我无法弄清楚如何从ecdf对象中提取数字.有人可以帮忙吗?
我知道有一个power.law.fit函数,但这只是估计参数 - 我想绘制数据并查看它是否排列.