程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了将 Matlab 分布拟合重写为 Python 代码大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决将 Matlab 分布拟合重写为 Python 代码?

开发过程中遇到将 Matlab 分布拟合重写为 Python 代码的问题如何解决?下面主要结合日常开发的经验,给出你关于将 Matlab 分布拟合重写为 Python 代码的解决方法建议,希望对你解决将 Matlab 分布拟合重写为 Python 代码有所启发或帮助;

我被要求将分布拟合函数从 Matlab 代码重写为 Python 代码。

%%file diStribution_fitTing.m
function pd = diStribution_fitTing(featurE)
    distnames =["Poisson","Exponential","GAMMa","ExtremeValue","Kernel"];    
    values_musT_Be_positive =["Poisson","GAMMa"];
    x=feature.';
    x_values = linspace(min(X),max(X));
    for dn=distnames
        if min(X)<0 & ~isempty(find(strcmp(dn,values_musT_Be_positivE)))
          conTinue;
        end
        distname = char(dn);
        pd = fitdist(x.',distName);
        res1=kstest(x,'CDF',pd); 
        res2=chi2gof(x,pd);
        if (~res1 && ~res2)
            fprintf('%s with 5%% significance level\r',distName);
            cdfplot(X)
            hold on
            plot(x_values,cdf(pd,x_values),'r-')
            plot(x_values,pdf(pd,'g-')
            legend('Empirical CDF',[distname ' CDF'],[distname ' pdf'],'LOCATIOn','best');
            %title(['Empirical CDF and ',[distname ' CDF/pdf']);
            hold off 
            return;
        else 
            fprintf('Not %s with 5%% significance level\n',distName);
        end
    end
end

我的第一种方法是这样的

def diStribution_fitTing(featurE):
        distnames = ["Poisson","Kernel"]
        values_musT_Be_positive = ["Poisson","GAMMa"]
        x = feature
        x_values = np.linspace(np.min(X),np.max(X))
        
        for dn in distnames:
            if (np.min(X) < 0 and (np.where(dn in values_musT_Be_positivE)))
                conTinue
            distname = str(dn)

根据Implement the MATLAB 'fitdist' in Python

我应该从 import scipy.stats as st 使用 st.gaussian_kde(data)st.norm.fit(data)。 我不知道这是否合适,因为与 Python 相比,Matlab 有一个自己的系统。

我的 Python 方法对吗?我在哪里可以找到如何将下一行写入 Python 代码?我对 Matlab 不熟悉。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

大佬总结

以上是大佬教程为你收集整理的将 Matlab 分布拟合重写为 Python 代码全部内容,希望文章能够帮你解决将 Matlab 分布拟合重写为 Python 代码所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。