前提假设

  • 妹子们一生中可以遇到100个追求者,追求者的优秀程度符合正态分布;
  • 每个妹子都具备判断并比较追求者优秀程度的能力;
  • 接受或拒绝一个追求者后永远无法后悔。

那么,问题来了

当遇到追求者时,如何选择才能获得最优结果?

如果人的优秀程度符合均值为80,方差20的正态分布,随机产生100个追求者,其优秀程度分布情况见下图:

p=rnorm(100,80,20)
hist(p,main="追求者--统计", ylab="数量", xlab="优秀程度",
     col=rainbow(50))
boxplot(p,col="red",lwd=2)

条形图显示了追求者的初始状态,盒装图显示的是大多数妹子所接受的追求者的能力情况。通过分布图可以看出,大多数理性人只能选择那些优秀程度在80左右的追求者。

下面介绍选择方法

首先,为了不错过在未来可以接受更优秀的追求者,理性的妹子会拒绝最早的一批追求者,并且采用第一批追求者做样本量k,理性地判断出追求者中最优秀的一位,其优秀程度记作y。然后,当遇到新追求者的时候,将追求者的优秀程度与y进行比较,优于y则选择接受,否则继续等待新的追求者;若新追求者的优秀程度始终小于y,则选择做剩女。

如何求出最优的样本量k?

如果最优秀的追求者出现在第i个位置(k < i ≤n),其中k、n为大于0的固定值。要想让第i个出现的他成功被妹子接受,就必须得满足前 i-1 任意一个位置出现的追求者被拒绝,这有\(\frac{k}{i-1}\)的可能。考虑所有可能的i,我们便得到了试探前 k 个追求者之后能选中最佳追求者的总概率 P(k):
\[P(k) = \sum_{i=k+1}^n \frac{1}{n}\cdot\frac{k}{i-1} = \frac{k}{n}\sum_{i=k+1}^n\cdot\frac{1}{i-1}\]
用 x 来表示 k/n 的值,并且假设 n 充分大,则上述公式可以写成:
\[P(k) = x\int_x^1 \frac{1}{t}dt = -xlnx\]
对-xlnx求导,并令这个导数为0,可以解出x的最优值,它就是欧拉研究的神秘常数的倒数\(e^{-1}\),则样本\(k=n \cdot x= e^{-1}\)。即当预计总追求者人数为100的时候,应先拒绝掉前\(100e^{-1} =37\)个人,用来做追求者样本。

sIdo=N=numeric()
for (i in 1:100){
  p=rnorm(100, 80, 20)
  pm=max(p[1:37])
  for(i in seq(37,100)){
    if(p[i]>pm){
      Ido=p[i]
      n=i
      break}
    else Ido=0;n=101}
  sIdo=c(sIdo,Ido)
  N=c(N,n)}
sum(N==101)/100  #剩女比例

图3、图4代表按照此种选择方法,重复100次实验(100个妹子)得到的追求者分布状态,通过条形图可以看出,60%的妹子成功找到如意郎君,被接受的追求者优秀程度在100以上;其余40%的妹子们,由于在第一批追求者当中拒绝掉了最优秀的那位,无奈选择做剩女。

plot(N,sIdo,pch=20,main="追求者散点图", ylab="优秀程度", xlab="接受时机",col=rainbow(80),cex = 1.5)
points(101,0,pch=20,col="#32CD32",cex = 2)
text(95, 1, "剩女101",cex = .8)

追求者散点图可以看出,比较优秀的追求者且被接受时,其排位在100位当中的50位左右的概率最大,即追妹子的最好时机不是越早越好。

综上所诉,可以得出如下结论:

  • 样本人数最优值为样本总量的37%;
  • 比较优秀的追求者成功追到妹子的概率在60%左右;
  • 优秀者的最佳出现时机为中间偏后位置。

反馈与建议

R语言-妹子被追后的选择分析的更多相关文章

  1. R语言︱异常值检验、离群点分析、异常值处理

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:异常值处理一般分为以下几个步骤:异常 ...

  2. R语言学习笔记1——R语言中的基本对象

    R语言,一种自由软件编程语言与操作环境,主要用于统计分析.绘图.数据挖掘.R本来是由来自新西兰奥克兰大学的Ross Ihaka和Robert Gentleman开发(也因此称为R),现在由“R开发核心 ...

  3. 社交网络分析的 R 基础:(一)初探 R 语言

    写在前面 3 年的硕士生涯一转眼就过去了,和社交网络也打了很长时间交道.最近突然想给自己挖个坑,想给这 3 年写个总结,画上一个句号.回想当时学习 R 语言时也是非常戏剧性的,开始科研生活时到处发邮件 ...

  4. R语言︱缺失值处理之多重插补——mice包

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:缺失值是数据清洗过程中非常重要的问题 ...

  5. R语言——实验5-聚类分析

    针对课件中的例子自己实现k-means算法 调用R语言自带kmeans()对给定数据集表示的文档进行聚类. 给定数据集: a)         数据代表的是文本信息. b)        第一行代表词 ...

  6. 预测分析建模 Python与R语言实现

    预测分析建模 Python与R语言实现 目录 前言 第1章 分析与数据科学1第2章 广告与促销10第3章 偏好与选择24第4章 购物篮分析31第5章 经济数据分析42第6章 运营管理56第7章 文本分 ...

  7. 使用R语言分析股价波动

    今天看的R语言.做个笔记. 使用R语言读取雅虎財经数据.分析微软公司(股票代码:MSFT)在2015年股价波动超过百分之十的日期. 然后通过检索新闻的方式,看看微软当天有什么新闻发生,导致股价波动. ...

  8. R语言统计分析技术研究 特征值选择技术要点

    特征值选择技术要点                          作者:王立敏 文章来源:  网络 1.特征值 特征值是线性代数中的一个重要概念.在数学,物理学,化学,计算机等领域有着广泛的应用. ...

  9. 解决SVN安装语言包后无法选择中文的问题(亲测可行)

    TortoiseSVN_1.8.8安装后无法选择简体中文,或者安装语言包后也无法选择中文 1.找到 SVN 安装目录,把里面的Languages文件夹删掉 2.安装语言包,百度一下也有很多安装包和语言 ...

随机推荐

  1. Android M Permission 学习笔记

    Android应用权限简要介绍 一个Android应用默认情况下是不拥有任何权限的, 这即是说, 在默认情况下, 一个应用是没有权利去进行一些可能会造成不好影响的操作的. 这些不好的影响可能是对其它应 ...

  2. 纯CSS3实现3D特效的iPhone 6动画

    iPhone 6发布不久,屌丝怎能买得起,不过作为程序员,今天看到一个用纯CSS3绘制的iPhone 6,由于CSS3特性的运用,带有点3D的动画特效,大家可以先来看看在线演示效果. 在线演示    ...

  3. smdkv210

    参考:http://code.google.com/p/libyuv/issues/detail?id=295 ******************************************** ...

  4. WinStore控件之Button、HyperlinkButton、RadioButton、CheckBox、progressBar、ScrollViewer、Slider

    1.Button protected override void OnNavigatedTo(NavigationEventArgs e) { /* * Button - 按钮控件,其全部功能是通过其 ...

  5. JavaScript中的String对象

        String对象提供的方法用于处理字符串及字符. 常用的一些方法: charAt(index):返回字符串中index处的字符. indexOf(searchValue,[fromIndex] ...

  6. Ubuntu 14.04 载入 JWS 或 访问 jsp异常的解决方法

    前段时间在Ubuntu 14.04中使用 Chrome登录 Webex准备面试的时候发现无法进入在线面试.搞笑的是前一天尝试进入 Webex的时候还一切正常,不过当时Webex的在线面试没有开始.等到 ...

  7. NTKO Officecontrol在线Word编辑器的使用

    1.何时进行手工卸载和安装 一般情况下应该让客户端自动控件,这样当服务器控件版本更新时,客户端可以获得自动升级方面的好处.但是,如果因为客户机配置有问题,或者有其它拦截工具拦截的原因无法自动安装控件, ...

  8. MyBatis知多少(9)不同类型的数据库

    并非所有的数据库都如此复杂,需要使用昂贵的数据库管理系统以及企业级的硬件.一些数 据库其实非常小,足以运行在一台老式的PC机上.所有的数据库都是不一样的.它们有各自不 同的需求和不同的挑战.iBATI ...

  9. 移动安全时代,如何保护你的app

    Android系统的安全性历来备受诟病,在强大的反编译工具下,APK中的代码逻辑一览无余:重打包技术使得各种盗版软件层出不穷,充斥着Android市场,特别是对于金融.电商.游戏等产品的盗版应用,严重 ...

  10. Android ActionBar Home按钮返回事件处理的两种方式

    今早无聊查看了一下android官方文档,最近对ActionBar很感兴趣,它确实对我们的日常开发起到了很便捷的作用. 对于通过点击ActionBar的Home按钮返回,以前我只知道有一种方式:也就是 ...