Beta

It’s a beautiful thing when free data meets free algorithm.

COS 上有人问过如何求1~100的素数。虽说这个问题没准就是计算机系大一新生的一道作业题,但对我这个几乎没有任何 C 编程经验的人来说,似乎还是有些挑战。花了几分钟整理了一下思路,既然素数的定义是只能被1和自身整除,那么:

  1. 如果第 n 个数,不能它前面的所有的数字(不包括1)整除,那么即为定义。但需要遍历所有数字,效率肯定不好。
  2. 如果 n 不能被 n 前面的所有素数整除的话,那么 n 应该是下一个素数(后来知道这个是算术基本定理)。

根据第二点思路,写出 R 代码:

1
2
3
4
5
6
7
prime2 <- function(m){
x <- c(2,3,5,7,11)
for(i in 13:m){
if(!any(i%%x == 0)) x <- c(x,i)
}
return(x)
}

即给出前 5 个素数,而后寻找第 6 个素数;再根据 6 个素数找第 7 个;类推……;直至 n。

很快又有两种解法:

  1. cloud_wei 的另外的实现方式:glm包的 isprime 函数(这个包似乎没有 Windows 版本)
  2. jo3vul31l3 给出了最优的解法,即埃拉托斯特尼筛法
1
2
3
4
5
6
7
8
9
prime3<-function(m){
x<-c(2:m) ; y<-NULL
repeat{
z<-x[(x%%x[1])!=0] ; y<-c(y,x[1])
if(x[1]>sqrt(m))break
x<-z
}
c(y,z)
}

以前由于职业的原因,经常全国各地的乱飞。虽说飞机的出事概率仅仅相当于陆上交通工具的百分之一,但每次上飞机前,总会怯怯的问自己:"这次上去能不能好好的下来?"上去的话,一般都是塞上耳机,打开笔记本--看 R。说实话,我还是更喜欢心灵的飞翔,而不是坐着飞机去感受加速度。

一般商用喷气式飞机的稳定性很高,即使有突然事件造成损害,大部分飞机都能保证安全或部分安全地着陆。引发安全问题的事件可能是:

  • skin or door failure leading to cabin pressure explosion
  • gross upset leading to airspeeds and/or G loadings far in excess of design limits
  • attack by military weapons * bird strike * flight through volcanic ash
  • engine explosion
  • collision with ground structures during takeoff

但如果被流星击中呢?流星的速度可以达到 25,000 km/hr(约 7000m/s ),还是很可怕的。

David Smith 在 How much of a threat are meteors to aviation? 这篇博客里给出了,法航客机被流星击中的概率,计算方法比较科学:

  1. 每小时有 125 颗流星"光临"地球,且都是超音速飞行的;
  2. 平均飞机的面积占地球总面积的5.7e-13;
  3. 法航 447 客机预计飞行的时间为 11 小时。

这种小概率事件我们可以使用 Poisson 分布去拟合,那么飞机被击中的概率就是

1
2
1 - ppois(0,5.7e-13*125*11) 
[1] 7.8375e-10

飞机被流星击中的概率为7.8375e-10,即,飞机被流星击中的概率是它的百分之一,

1
2
1 - ppois(0,720e6*5.7e-13*125)
[1] 0.05000637

很可怕吧!今后二十年,至少有一架被陨石击中的概率达到了 5% !已经不是小概率事件了!

房地产是个啥?这话题每每被俺们 80 后提起的时候,必然是捶胸顿足、长吁短叹,恨不得啖无良地商之肉,食腐败官员之血。俺们都介草民,大部分是 No Money, No House, No Woman 的主儿,没钱买房,瞅瞅成吧?

房地产那事俺不懂,而且晚上同事喜酒喝多了,有点懵。就放个图在这儿(从 2006-05-01到2009年-06-01的北京房地产),我们一起瞅,hohoh

house

第一列图呢,是关于"未签约现房的统计",按顺序下来是:
  • 未签约套数(X1)
  • 未签约面积(X2)
  • 未签约住宅套数(X3)
  • 未签约住宅面积(X4)
第二列图呢,是关于"可售期房统计",按顺序下来是:
  • 可售房屋套数(X5)
  • 可售房屋面积(X6)
  • 可售住宅套数(X7)
  • 可售住宅面积(X8)

我把数据发布在这里,有兴趣的童鞋可以仔细分析下。

买房?不买房?啥时候买?耗着,等经济崩溃?做最后一棒?更懵了!洗洗睡吧~~

今年 5 月份,KDnuggets 给出了近六个月用于实际数据挖掘(非评估)项目中使用的挖掘工具调查,共 364 个投票人。

  1. SPSS (PA)和 SAS(BA) 没啥可说的,老牌的商业数据分析软件商,尤其是 SPSS,去年就是 KDnuggets 这项调查的第一位,SPSS 的销售常拿这个说事;
  2. Excel(spreadshit),可进行“简单数据操作”的 MS 产品;
  3. RapidMiner,比较流行的开源数据挖掘软件;
  4. R,为数据分析而生的开源软件。说到这儿,我突然卡壳了,它能做的事情太多……。R 更贴近于数据的本质(继续鼓吹)~~

SAS、SPSS、Statistica 陆续增加了对 R 语言的支持,从这个角度来讲,这几大厂商自己都心虚了,几年后数据挖掘领域必定是 R 的天下。

原文链接:http://www.kdnuggets.com/polls/2009/data-mining-tools-used.htm

0%