精华内容
下载资源
问答
  • 地铁区间隧道烟气稳定层化长度与临界层化风速,翁庙成,孙祥,采用因次分析的方法推导了地铁区间隧道火灾烟气稳定层化长度与临界层化风速的无因次表达式;采用FDS6.5.2模拟分析了纵向风速及断面�
  • 【算法】求区间并集的长度

    千次阅读 2017-05-28 18:47:35
    给定数轴上的一些区间,求区间并集的长度。 只需要用一个cover来记录当前区间覆盖的层数。从左到右遇到一个点就判断:每作过一次区间左端点,cover就加1,每作过一次区间右端点,cover就减1,。显然cover只有正...

    给定数轴上的一些区间,求区间并集的长度。


    只需要用一个cover来记录当前区间覆盖的层数。从左到右遇到一个点就判断:每作过一次区间左端点,cover就加1,每作过一次区间右端点,cover就减1,。显然cover只有正整数和0两种状态,为正数时就将临近两个点所指代的小区间长度加进来。

    *求区间并集长度

    def howmany(a,b):#求b在列表a中出现的次数
        num=0
        for i in a:
            if i==b:
                num+=1
        return num
    
    left=[]#存储左端点
    right=[]#存储右端点
    allpoint=[]#存储所有点
    while(1):
        x=float(input('左端点'))
        y=float(input('右端点'))
        if (x==0 and y==0) or (x>y):#输入0 0或者不合法时退出
            break
        left.append(x)
        right.append(y)
        allpoint.append(x)
        allpoint.append(y)
    
    allpoint.sort()#存所有点的list排序
    cover=0#遇到区间左点时+1,遇到区间右点时-1
    length=0.0#用于求并区间长度
    for i in range(len(allpoint)-1):
        if allpoint[i+1]==allpoint[i]:#有重复点时跳过去(长度就是0)
            continue
        cover+=howmany(left,allpoint[i])#加上作左点的次数
        cover-=howmany(right,allpoint[i])#减去作右点的次数
        if cover==0:#为0时说明不在集合中,跳过去
            continue
        length+=allpoint[i+1]-allpoint[i]#cover大于0时这个小区间就加进来
    print ('length=',length)


    运行结果:


    也可以用最右点减去最左的点得到的长度,依次减去那些cover为0的小区域的长度。

    展开全文
  • 区间段覆盖总长度

    2018-04-29 10:29:03
    问题 现有一直线,从原点到无穷大。...用一个数组来标记区间段的覆盖情况,最后遍历这个标记数组就行了。 public class XianDuanLength { public static void main(String[] args) { SegMe...

    问题

    现有一直线,从原点到无穷大。
    这条直线上有N个线段。线段可能相交。
    问,N个线段总共覆盖了多长?(重复覆盖的地区只计算一次)

    解答

    用一个数组来标记区间段的覆盖情况,最后遍历这个标记数组就行了。

    public class XianDuanLength {
    
        public static void main(String[] args) {
            SegMent segMent1 = new SegMent(2, 5);
            SegMent segMent2 = new SegMent(7, 10);
            SegMent segMent3 = new SegMent(16, 20);
            SegMent segMent4 = new SegMent(9, 12);
            SegMent[] segMents = { segMent1, segMent2, segMent3, segMent4 };
            System.out.println(getTotalLength(segMents));
        }
    
        public static int getTotalLength(SegMent[] segMents) {
            //找到最小起始点和最大终止点
            boolean flag[] = new boolean[100];
    
            int min = segMents[0].getStart();
            int max = segMents[0].getEnd();
            for (SegMent segMent : segMents) {
    
                //标记区间段
                for (int start = segMent.getStart(); start < segMent.getEnd(); start++) {
                    flag[start] = true;
                }
    
                if (segMent.getStart() < min) {
                    min = segMent.getStart();
                }
                if (segMent.getEnd() > max) {
                    max = segMent.getEnd();
                }
            }
            int length = 0;
            for (int i = min; i <= max; i++) {
    
                if (flag[i]) {
                    while (flag[i]) {
                        length++;
                        i++;
                    }
                }
            }
    
            return length;
        }
    
        /**
         * 判断点是否在区间内
         * @param point
         * @param segMent
         * @return
         */
        public static boolean isInSegMent(int point, SegMent segMent) {
            return segMent.getStart() <= point && point <= segMent.getEnd() ? true : false;
        }
    
        /**
         * 区间类
         */
        static class SegMent {
            private int start;
            private int end;
    
            public SegMent(int start, int end) {
                this.start = start;
                this.end = end;
            }
    
            public int getStart() {
                return start;
            }
    
            public void setStart(int start) {
                this.start = start;
            }
    
            public int getEnd() {
                return end;
            }
    
            public void setEnd(int end) {
                this.end = end;
            }
        }
    }
    展开全文
  • 2: 单个正态总体均值的区间估计 一 枢轴量 1.1 目的: 给定未知变量,以及样本 求出置信水平为的置信区间 1.2 方法: 1: 随机变量G,G的分布已知 2: 找到a<b,使得 G是关于和样本的函数 3: 从...

    目录

        1: 枢轴量

        2: 单个正态总体均值的区间估计 \sigma^2 已知

        3: 单个正态总体均值的区间估计 \sigma^2 未知

        4: 例子

     


    一   枢轴量

         1.1  目的: 给定未知变量\theta,以及样本X_1,X_2,...X_n

          求出置信水平为1-\alpha的置信区间

        1.2  方法:

                1: 随机变量G,G的分布已知

                2: 找到a<b,使得P(a<G<b)\geq 1-\alpha

                G是关于\theta和样本X_1,X_2,...X_n的函数

                3: 从a<G<b ,解出\hat{\theta}_L<\theta<\hat{\theta}_U

                          (\hat{\theta}_L,\hat{\theta}_U)就是参数的双侧置信区间

                           G(X_1,X_2,...X_n;\theta) 称为枢轴量

        1.4 例: X_1,X_2,...X_n为样本,总体X \sim N(u,\sigma^2),u,\sigma为未知参数

    要估计u

      解:

         G_1=\frac{\bar{X}-u}{\sigma/\sqrt{n}} \sim N(0,1)  ,因为有未知参数\sigma,所有不是枢轴量

       

           G_2=\frac{\bar{X}-u}{S/\sqrt{n}} \sim t(n-1), 分布已知,只含有估计量u和样本,所以是枢轴量

     1.5 由于a,b 可能有很多,如何取a,b

             1: Neyman 原则: 求a,b 使得区间长度最短

             2:如果最優解不存在,對於連續總體,長取 P(G\leq a)=P(G\geq b)=\frac{\alpha}{2}

             3:從 a<G<b,解出 \hat{\theta}_L<\theta<\hat{\theta}_U     

               如果是双侧置信区间,有如下性质

                \hat{\theta}_L1-\alpha/2置信区间的下限

                 \hat{\theta}_U1-\alpha/2置信区间的上限   

        


    二 单个正态总体的均值区间估计  \sigma^2已知

        假设X \sim N(u,\sigma^2),X_1,X_2,...X_n为样本,\bar{X},S^2为样本均值和方差,置信度为1-\alpha

       2.1 \sigma^2已知

              因为     G=\frac{\bar{X}-u}{\sigma/\sqrt{n}} \sim N(0,1)

               设常数a,b

                        P\begin{Bmatrix} a<G<b \end{Bmatrix}\geq 1-\alpha

               等价于

                      P\begin{Bmatrix} \bar{X}-\frac{\sigma}{\sqrt{n}}*b<u<\bar{X}-\frac{\sigma}{\sqrt{n}}*a\end{Bmatrix}\geq 1-\alpha

                因为对称

            

                所以 置信区间长度

                  L=\frac{(a-b)\sigma}{\sqrt{n}}=2Z_{\alpha/2}\frac{\sigma}{\sqrt{n}}

              其中Z_{\alpha/2} 为上分位数,查正态分布表的时候\Phi (n)=1-\alpha/2,得到分位数n

                

            当置信度1-\alpha增大的时候,区间长度L也增大,精度下降

             所以双侧置信区间为

             [\bar{X}-\frac{\sigma}{\sqrt{n}}Z_{\alpha/2},\bar{X}+\frac{\sigma}{\sqrt{n}}Z_{\alpha/2}]

            单侧置信区间下限为   

            \bar{X}-\frac{\sigma}{\sqrt{n}}Z_{\alpha}

            注:

                  P\begin{Bmatrix} G>Z_{\alpha} \end{Bmatrix}=1-\alpha:

                  G=\frac{\bar{X}-u}{\sigma/\sqrt{n}} \sim N(0,1)

            同理单侧置信上限为:

             \bar{X}+\frac{\sigma}{\sqrt{n}}Z_{\alpha}


    三  单个正态总体的均值区间估计  \sigma^2未知

              G=\frac{\bar{X}-u}{S/\sqrt{n}} \sim t(n-1)

     

       令a= t_{\alpha/2}(n-1)   -a<G<a 解得的置信区间为

             \bar{X}-\frac{S}{n}a<u<\bar{X}+\frac{S}{n}a

             单侧置信区间下限为 \bar{X}-\frac{S}{\sqrt{n}}t_{\alpha}(n-1)

              单侧置信区间上限为 \bar{X}+\frac{S}{\sqrt{n}}t_{\alpha}(n-1)

     

    四  例子

          4.1 设新生儿童体重服从正态分布N(u,\sigma^2),从某个医院随机抽取16个儿童,体重如下

          data = [3200,3050,2600,3530,\
                3840,4450,2900,4180,\
                2150,2650,2750,3450,\
                2830,3730,3620,2270]

          求置信区间为95%的双侧置信区间

         解:

          1:   如果\sigma^2未知,服从t(n-1)分布

            置信区间为: 

          [\bar{X}-\frac{S}{\sqrt{n}}t_{\alpha}(n-1) ,  \bar{X}+\frac{S}{\sqrt{n}}t_{\alpha}(n-1)]

         \bar{X}=3200,s=665.48,t_{0.025}(15)=2.1315

          带入 : 置信区间下限2845.38   置信区间上限3554.62

            

          2: 如果\sigma=500,方差已知,则服从正态分布

          置信区间为

           [\bar{X}-\frac{\sigma}{\sqrt{n}}Z_{\alpha/2},\bar{X}+\frac{\sigma}{\sqrt{n}}Z_{\alpha/2}]

            Z_{0.025}=1.96

           置信区间下限2955.00   置信区间上限3445.00

        

    import numpy as np
    import scipy.stats as ss
    from scipy.stats import norm
    
    '''
        获取分位数值a,t分布和正态分布都是对称函数
    Args:
        n: 自由度,t分布才有
        alpha: 累积积分,p(x>a)=alpha
        Ftype: 0:符合正态分布  1: t分布
    '''
    def GetQuantile(tp=1,n=15,alpha=0.025):
        
        if 1==tp:
            print("\n t 分布")
            normt = ss.t(n)
            x = -normt.ppf(alpha)## 累积分布概率计算反函数
        else:
            print("\n 标准正太分布 ")
            x= -norm.ppf(0.025,loc=0,scale=1)
        
        print("\n x %6.3f"%x) 
        return x
        
    # -*- coding: utf-8 -*-
    """
    Created on Fri Apr 23 16:26:20 2021
    
    @author: chengxf2
    """
    
    import numpy as np
    
    def ConfidenceInterval(sigma=-1):
     
        data = [3200,3050,2600,3530,\
                3840,4450,2900,4180,\
                2150,2650,2750,3450,\
                2830,3730,3620,2270]
        
        n = len(data)
        u =np.mean(data)
        s = 0.0
        for x in data:
            s+= np.power(x-u,2)
        
        sd = np.sqrt(s/(n-1))
        print("\n 样本均值 ",u, "\t 样本方差%6.2f"%sd )
        
        if sigma == -1: #t 分布      
            Quantile = 2.1315
            std = sd #样本差
        else:
            Quantile = 1.96 #分位数,查表可以得到
            std= sigma #方差
            
            
        
       
        
       
    
        print("\n u ",u,"\t n: ",n)
        low = u-Quantile*(std/np.sqrt(n))
        up = u +Quantile*(std/np.sqrt(n))
        print("\n 置信区间下限%6.2f"%low, "\t 置信区间上限%6.2f"%up)
        
    ConfidenceInterval(-1)

      4.2 某种样本的寿命服从正态分布,现在随机抽取10个,样本方差S=0.92,样本均值\bar{X}=5.78,

    求u得置信水平为95%的单侧置信区间下限

       解: 

                 a=\bar{X}-\frac{S}{\sqrt{n}}t_{\alpha }(n-1)

                

    '''
    單測區間估計
    '''
    def GetM():
        quantile= GetQuantile(1,0.05,9) 
        print("\n 分位数",quantile)
        xmean = 5.78 #樣本均值
        s= 0.92 #方差  
        n = 10 #樣本總數
        
        low = xmean- (s/np.sqrt(n))*quantile
        print("\n low %5.2f"%low)
    
       输出 5.25

    4.3   1500人,身高高于180的,有375人,求180cm比例P的置信水平为95%的置信区间

            解:

                    \hat{p}=\bar{x}=375/1500=0.25

                    \hat{s}=p(1-p)=0.1875

                    近似区间

                  [\bar{X}-\frac{S}{\sqrt{n}}Z_{0.025}, \bar{X}+\frac{S}{\sqrt{n}}Z_{0.025},]

                

    '''
    單測區間估計
    '''
    def GetM():
        quantile= GetQuantile(1,0.025,1500-1) 
        print("\n 分位数",quantile)
        xmean = 0.25#樣本均值
        s=  np.sqrt(0.1875) #方差  
        n = 1500 #樣本總數
        
        low = xmean- (s/np.sqrt(n))*quantile
        up = xmean+ (s/np.sqrt(n))*quantile
        print("\n 下限 %5.3f"%low)
        print("\n 上限 %5.3f"%up)
    ===========
     t 分布 1499
    
     x  1.962
    
     分位数 1.9615478106169353
    
     下限 0.228
    
     上限 0.272

     

    展开全文
  • 置信区间计算方法

    千次阅读 2019-11-11 22:12:28
    SPSS和R应该都能,这里简单罗列下三阶统计的计算方法。 1 均值的置信区间 以前保存的一个表格,来源未知。补充,对于非正态的数据的小样本数据,参考[这里]。...


    画图加个阴影,需要用到置信区间的计算方法。SPSS和R应该都能算,这里简单罗列下三阶统计的计算方法。

    1 均值的置信区间

    以前保存的一个表格,来源未知。补充,对于非正态的数据的小样本数据,参考这里

    在这里插入图片描述

    2标准差的置信区间

    标准差(SD)的很自信区间计算方法,以Excel为例。

    Lower limit: =SD*SQRT((n-1)/CHIINV((alpha/2), n-1))

    Upper limit: =SD*SQRT((n-1)/CHIINV(1-(alpha/2), n-1))

    其中,n为数据样本,SD为标准差。alpha =0.05 for 95% 置信区间; 0.01 for 99% 置信区间。
    CHIINV返回 χ2 分布单尾概率的反函数值。如果 probability = CHIDIST(x,…),则 CHIINV(probability,…) = x。使用此函数可比较观测结果和期望值,可确定初始假设是否有效。

    3偏度的置信区间

    偏度的标准误差(SES)取决于样本的大小,其计算方法如下。
    在这里插入图片描述
    误差范围等于1.96乘以SES,偏度的置信区间等于计算出的偏度加上/减去误差范围。
    程序参考R语言的spssSkewKurtosis函数

    4 变异系数的置信区间

    变异系数的置信区间的相关论文挺多的,好几篇都是利用贝叶斯去评估CV的广义置信区间。
    在这里插入图片描述
    其中SE(CV)为变异系数的标准差SE (CV) ≈C /√2n,
    偏差校正系数的标准误差(SE) (CV*)≈ CV (1+1/4n)/√ 2n,
    α是显著性水平,95%的置信区间α= 0.05.
    计算方法ci.cv {MBESS 包}或者自举法【3】

    以上对于正态分布是成立的,对于非正态分布的数据,还需谨慎使用。对于小样本的置信区间计算方法可用bootstrap,详见我的博文

    5参考文献

    【1】David J. Sheskin, Handbook of Parametric and Nonparametric Statistical Procedures, Fourth Edition, IBSN:1584888148.
    【2】https://newonlinecourses.science.psu.edu/stat414/node/261/
    【3】自举法求CV的置信区间

    展开全文
  • 【算法】求两个区间的重叠长度

    千次阅读 2017-11-30 18:30:28
    已知数轴上的两个区间:R1的起点是min1,区间长度len1,R2的起点是min2,区间长度len2,求这两个区间的重叠长度,若不重叠,求他们之间的距离
  • 求最大的区间长度使得区间的最大与最小差在[m,k]之间 【思路】 单调栈,维护一个保存最大值的递减栈,最小值的递增栈,如果目前最大与最小的差超过上限了,必定要出队,因为留着对于以后的贡献保持,可以即时删除...
  • 概率密度图形非对称时,取对称分位点所确定的置信区间长度一般不是最短的,对于相同的置信水平,利用解方程组的方法可以求出单个正态总体中方差的最短置信区间及两个正态总体方差之比的最短置信区间,置信区间长度越...
  • RMQ问题:区间最小值问题(也可以解决区间最大值问题) ...首先定义数组:我们用定义 Amax[i][j] 为从 i开始的,长度为2^j的区间里面的最大值, Amin[i][j]为从i开始,长度为2^j的区间里面的最小值  一:预处理如
  • 给定一组区间,表示为[start,end],请给出方法,将有重叠的区间进行合并。例如: 给定:[1,3],[2,6],[8,10],[15,18], 合并:[1,6],[8,10],[15,18]. 此文件只是简单的实现, 没有考虑复杂度等问题
  • 给定一个长度为n的整数序列,请找出最长的不包含重复数字的连续区间,输出它的长度。 输入格式 第一行包含整数n。 第二行包含n个整数(均在0~100000范围内),表示整数序列。 输出格式 共一行,包含一个整数,表示...
  • 置信区间 - 看这一篇就够了 欢迎关注公众号:机器学习荐货情报局 一起进步,一起学习,一起充电~ 欢迎投稿,讨论,拍砖 1. 定义 在统计学中,一个样本的置信区间是对总体参数的一个区间估计。置信区间给出的...
  • 给你一个长度为n的数列,求最长子区间长度,使得区间的最大值与最小值的差s满足, m 思路: 这题很容易想到用两个单调队列维护当前最值, 作为判断条件,如果差值大于k了,就去掉较前面的那个队列...
  • js根据数字字符串自动获取范围区间,用于数字类型的值自动获取查询范围,默认分为五个区间,如需选择其他范围区间,修改getScope方法中initScope的参数
  • 数理统计中的区间估计

    万次阅读 多人点赞 2015-06-04 19:49:08
    区间估计用点估计θ^(X1,X2,…,Xn)\hat\theta(X_1,X_2,\dots,X_n)来估计总体的未知参数 θ\theta,一旦我们获得了样本观察值 (x1,x2,…,xn)(x_1,x_2,\dots,x_n),将它代入θ^(X1,X2,…,Xn)\hat\theta(X_1,X_2,\dots,...
  • 它是用样本得的一个值去估计未知参数.但是,点估计值仅仅是未知参数的一个近似值,它没有反映出这个近似值的误差范围,使用起来把握不了.区间估计正好弥补了点估计的这个缺陷.也就是说,我们希望确定一个区间,使...
  • python求解重叠区域线段覆盖总长度

    千次阅读 2017-07-31 21:42:09
    来源于网上的一道面试题目,看到后感觉挺新颖的,正好这一篇博客也有了实现,感觉思路很妙,作者给出来的是Java版本的,这里我简单给出来一下python版本的,先贴一下...依据线段的区间将线段的区间像素单位化,即将计
  • 单位长度区间包含所有点集

    千次阅读 2015-09-21 15:48:53
    问题描述:设计一个高效算法,对实线上给定的一个点集{x1,x2,...,xn},求一个单位长度区间的集合,包含所有给定的点,并要求此集合最小。证明你的算法是正确的。 思路:可以先对点集按从小到大的顺序排序,然后从...
  • 区间调度问题详解

    千次阅读 多人点赞 2017-12-25 22:25:59
    今天给大家介绍一下区间调度问题。区间调度是一类难度比较大,但同时应用比较广的问题,经常会在面试中以各种形式出现。本文将会介绍区间调度的各种变形,希望能使大家在面临区间调度问题时得心应手,并可以在实际...
  • 区间覆盖问题

    千次阅读 2019-01-12 13:34:31
    用固定长度的闭区间覆盖这n个点,至少需要多少个这样的固定长度区间?设计解此问题的有效算法,并证明算法的正确性。 ★算法设计: 对于给定的实直线上的n个点和闭区间长度k,计算覆盖点集的最少区间数。 ★...
  • JavaScript判断两个日期区间是否超过规定的区间长度 条件: 1、一个初始日期,一个结束日期,两个都是字符串类型 2、判断日期区间不能超过3个月 思路1 :先判断是否同一年,然后判断月,最后判读日 步骤:...
  • 区间估计

    千次阅读 2019-05-26 08:16:03
    注:置信水平为1-的置信区间是不唯一的对于概率密度的图形是单峰且关于纵坐标轴对称的情况, 易证取a和b关于原点对称时,能使置信区间长度最小. ...
  • 聊聊置信度与置信区间

    万次阅读 2019-04-15 08:52:06
    总第143篇/张俊红今天这篇聊聊统计学里面的置信度和置信区间,好像没怎写过统计学的东西,这篇试着写一写。1.点估计在讲置信度和置信区间之前先讲讲点估计,那什么是点估计呢?...
  • 根据时间区间查询时间区间的逻辑

    千次阅读 2020-06-03 10:14:34
    根据时间区间查询时间区间需求分析痛点解决思路 需求 需要根据发放时间区间(2个字段) 去查数据库中的起始时间和结束时间(2个字段) 分析 痛点 如果只是Mysql的话还好说, 只需要判断前端查询条件的前后两边的数据, ...
  • 统计推断的三大基本形式: 抽样分布 参数估计(点估计、区间估计) 假设检验(参数检验、非参数检验) 一、 置信区间 在实际中,我们通常得不到总体在某方面的真值,比如总体...点估计实际上就是利用样本出一个值来
  • //这段区间可以作为备选利用就进入循环,此处加一很关键,因为(1,2),(3,4)覆盖了(1,4) { flag = true ; //flag=true保证所有区间都可以覆盖上 if ( len [ i ] . b - temp > tempmax ) //选从temp开始工作...
  • 1. 给定初值v,和长度l,定义list s 或者: 2. 产生一个数值递增list 2.1 从0开始以1递增 2.2 在[a,b)区间上以1递增 2.3 在[a,b)区间上以c递增 3. list的基本操作 L.append(var) #追加元素 L.insert(index,var...
  • 区间dp入门

    万次阅读 多人点赞 2018-05-03 18:07:49
    一.什么是区间dp?顾名思义:区间dp就是在区间上进行动态规划,求解一段区间上的最优解。...所以在代码实现上,我可以枚举区间长度len为每次分割成的小区间长度(由短到长不断合并),内层枚举该长度下可以的...
  • 结合数理统计中大样本参数区间估计计算理论,通过对断面速度和断面侧向余宽值的统计推断,提出了隧道出入口过渡段长度的计算方法,得出隧道出口的过渡段长度要比入口的过渡段长度要短,隧道入口段的过渡段长度受线形...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 220,673
精华内容 88,269
关键字:

区间长度怎么算