统计算法_概率基础,不得不说的异步编程

1、什么是异步编程?

本次有以下函数

学习的文章在这里:

    异步编程就是把耗时的操作放进一个单独的线程中进行处理(该线程需要将执行进度反映到界面上)。由于耗时操作是在另外一个线程中被执行的,所以它不会堵塞主线程。主线程开启这些单独的线程后,还可以继续执行其他操作(例如窗体绘制等)。

1、简单边际概率

1、视图开始文件_ViewStart.cshtml

    异步编程可以提高用户体验,避免在进行耗时操作时让用户看到程序“卡死”的现象。

2、联合概率

@renderbody方法放在DIV中。这样我们可以区分哪些内容来自布局文件,哪些内容来自视图。

 

3、条件概率

2、Data特性

2、异步编程模型(APM)

4、随机变量期望值

3、强类型的视图

    APM是Asynchronous Programming Mode的缩写,即异步编程模型的意思,它允许程序用更少的线程去执行更多的操作。在.NET Framework中,要分辨某个类是否实现了异步编程模型,主要就是看该类是否实现了返回类型为IAsyncResult接口的BeginXXX方法和EndXXX方法。

5、随机变量方差

    由于委托类型定义了BeginInvoke和EndInvoke方法,所以委托类型都实现了异步编程模型。

6、随机变量协方差

    2.1 Beginxxx方法--开始执行异步操作

7、联合协方差

          在需要获取文件中的内容时,我们通常会使用FileStream的同步方法Read进行读取,该同步方法的定义为:

8、组合期望回报

          public override int Read(byte[] array,int offset,int count)

9、投资组合风险

          当使用上面的方法读取大文件的内容时,会出现堵塞UI线程,导致在文件内容没有读取完成之前,用户不能对窗体进行任何操作(包括关闭应用程序),这时窗体就会出现无法响应的情况。

 

          为了解决这个问题,微软早在.NET 1.0的时候就提出了异步编程模型,并为FileStream类提供了异步模式的方法实现,即BeginRead方法。该方法会异步地执行读取操作,并返回实现了IAsyncResult接口的对象(该对象存储这异步操作的信息)。

 

          下面给出了BeginRead方法的定义,我们可以从中找出它与同步方法Read的区别:

 

          public override IAsyncResult BeginRead(byte[] array,int offset,int numBytes,AsyncCallback userCallback,Object stateObject)

 

          从以上的异步方法的定义可以看出,该异步方法的前面3个参数与同步方法Read一致,后两个参数userCallback和StateObject则是同步方法所不具备的。userCallback表示异步操作完成后需要回调的方法,该方法必须匹配AsyncCallback委托类型;stateObject则代表传递给回调方法的对象,在回调方法中,可以通过查询IAsyncResult接口的AsyncState属性来读取该对象。该异步方法之所以不会堵塞UI线程,是因为它在被调用后,会立即把控制权交还给调用线程(如果是UI线程调用了该方法,则就将控制权返回给UI线程),然后由另一个线程去执行文件读取操作。

说概率前复习下历史函数
create_rand_list() #创建一个含有指定数量元素的list
sum_fun() #累加
len_fun() #统计个数
multiply_fun() #累乘
sum_mean_fun() #算数平均数
sum_mean_rate() #算数平均数计算回报
median_fun() #中位数
modes_fun() #众数
ext_minus_fun() #极差
geom_mean_fun() #几何平均数
geom_mean_rate() #几何平均回报

 

var_fun() #方差-样本S^2
covar_fun() #协方差(标准差)-样本S
trans_coef_fun() #变异系数CV
pearson_fun() #相关系数-样本r
---------------以上是旧的------------------------------------------------------------------------
---------------以下是新的------------------------------------------------------------------------
概率这块整个给我看了个懵逼,后面的代码都是按照我自己理解写的,如果有错误,欢迎指正
另外说明的是概率是很精细的事情,所以浮点型的数字会比较多,而且小数位数十分精确,除特殊情况,我就四舍五入截取到小数点后4位
简单事件,就是只有一个特征的事件,所有可能事件的集合就是样本空间,举个例子
有两袋子花生米,第一个袋子有32个花生米,其中有3个坏的,第二个袋子有17个花生米,其中有5个坏的,这个例子的样本空间就是下面这样。我想说,要是我选了B袋子我一定诅咒卖花生的老板吃方便面没有调料
袋子|是否坏的|花生米个数
A   |0       |3
A   |1       |29
B   |0       |5
B   |1       |12
为了方便起见,是True用0表示,否false用1表示
1、简单边际概率,记做P(A)
这个容易理解,比如计算坏花生米的出现率,这个简单,就不单独写代码了
P(A) = 坏花生米/总数 = 8/49 = 0.1633

    2.2 Endxxx方法--结束异步操作

2、联合概率

本文由澳门新葡亰平台官网发布于编程,转载请注明出处:统计算法_概率基础,不得不说的异步编程

TAG标签:
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。