`
googya
  • 浏览: 140547 次
  • 性别: Icon_minigender_1
  • 来自: 汉川
社区版块
存档分类
最新评论
文章列表
    摘要:遗传算法是解决最优化的搜索算法,是进化算法的一种,在数据挖掘领域、特别是在决策领域应用很广泛。目前很多关于遗传算法的介绍过于复杂且停留于理论层面,为此,本文介绍了遗传算法的思想并用R语言实现 ...

在textpad上使用R

    博客分类:
  • R
    和其他编程语言一样,R也需要写代码,那就需要一个比较好一点的工具。vim当然是个神器了,但是一般用R的都是统计出身,vim太复杂了,我比较喜欢那种简单易用的软件。Tinn-R是很不错的一个工具,但是对我而言略显庞大(一个是功能太多,多数用不着;二一个是我机器实在太弱了,程序开多了慢如牛)。还是得把我最喜欢的老牌工具textpad搬出来。即简洁如记事本,也不失一般工具的很多特性(语法高亮等),关键它是一个共享软件,不需要破解,不收费(如果你愿意的话,也可以购买)。     下面我简单介绍一下在textpad上如何把R加上去。   1、textpad网站上下载,语法高亮的文件r.syn ...
     matz的ruby是基于c语言的,很多的核心的类都是用C语言写的,对于高手,想研究ruby源程序根本不存在任何问题,但是对于我这样的,C语言只学了个半吊子的人来说,要看C语言源代码似乎有点为难。不是说不可能,很可能做的是一件费力不讨好的事情。所以以前看《Ruby hacking guide》的时候,刚开始兴趣还很浓厚,可是看着看着就跟不上了,也没有时间、精力深挖下去,结果落得半途而废,草草收场。      前些时候听说有人用Ruby实现Ruby,刚开始没太关注,觉得人家还有点多此一举,后来一想,为何不用rubinius来继续学习Ruby呢?于是对Rubinius多了解了一些,在它的实现 ...
    今天一位童靴给我了如下的代码: #include<stdio.h> main() { int b=3; int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++)+=128; printf("%d,%d\n",*ptr,*(ptr++)); } 问我输出的结果是什么以及原因。我告诉他是8,7.他觉得很吃惊,因为他在vc++下编译的,执行的结果是 7,7,我试了一下,在vc下果然是7,7,我猜想大概是程序printf函数中的参数执行的顺序的问题,在gcc中是从右往左,vc++里面出现这样的 ...
    各种数据库的驱动在写法上还是存在一点差异的,比如SqlServer和PostgreSQL在感觉上存在很大的差异。      PostgreSQL:     String connectionUrl = "jdbc:postgresql://192.168.100.207:5432/MySQL"; Class.forName("org.postgresql.Driver"); Connection conn = DriverManager.getConnection(connectionUrl," ...
    最近一直对于R中的order的用法不理解,不知道其返回的什么东西。今天稍微研究了一下,多天的困惑都消除了。备忘,记之!     假设有如下向量: xx    4    3    2    1    2    3    4    5 order(xx)返回的是: [ ...
    k-means聚类以k个(也是要聚类的个数)随机的中心质点(centroid)开始,然后将每个待聚类的项分派到离它最近的簇。分派完之后,中心质点要进行移动:移动到该簇所有点的平均位置上。接着再次进行分配。这个过程反复的执行,直到中心质点的位置不再发生明显变化或者说分配后的点所属的簇不在变化。     具体来说是以下四步:     (1) Start with k cluster centers (chosen randomly or according to some specific procedure).     (2) Assign each row in the data ...
        1块钱可以买一瓶汽水,两个瓶可以换1瓶汽水,那么20可以喝到多少瓶汽水? 很简单、但是很容易出错的一个问题。事实上,关键是最后一步,你手中只剩下一个空瓶,这个瓶子你可以给老板,并且再向他索要一瓶汽水,喝完之后,将空瓶给他。 引用这个本来不应该发到论坛中来(仅仅是自己参考用的)。只是不小心发错了,发上来了。希望大家不要见怪,只当是一个脑筋急转弯吧,活跃一下思维而已。程序员嘛,也不应该太较真,是不是。希望大家原谅我这次。                    以下是这个问题的Ruby实现: def sum_bottles(money) sum=left_b ...
        受有道难题中许多答复者的启发,我决定对base64编码也研究一下,因为看起来这个问题在Ruby下是相当的easy。这种做法的问题在于:诸如汉字这样的字符不能还原。。代码如下: BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" def enBASE64(s) s.unpack("B*")[0].scan(/\d{1,6}/).map!{|x| if x.size==6 BASE[("0"*2+x).to_i ...
按照yugui 大姐的说法,class_eval和instance_eval有如下的区别: class&amp;instance_eval              self                            default definee class_eval                          the receiver                   the receiver instance_eval                   the receiver                     eigenclass ...
    有道的工程师闲暇之余,将Base64编码改成了Base4编码,即把每个8Bit的字节转换成4个2Bit的字节,然后以4个字符来代替。编码和字符的对应方案如下:     00 ---- a     01 ---- o     10 ---- d     11 ---- 空格     这样,编码后的字符串就只会含有字符‘d','a','o'和空格。     例如字符y ,其ASCII码是121,对应的二进制串是01111001,这样分成 01 11 10 01四块后,用Base4编码后的字符串为"o do"。     有道的工程师很好奇,按照这种编码方式,编 ...
        经过一段时间的Ruby学习,感觉现在比刚开始时对Ruby的认识强多了。现在将我自己的学习经历说一下。         我觉得刚开始的时候要看《The Ruby way》 ,中文版本叫《Ruby之道》。这本书可以让你知道Ruby有哪些内容,如何使用。看完这本书,你就知道 how。         觉得《the ruby way》看得差不多之后,我看的是《the ruby programming language》,这本书讲Ruby的具体原理、机制,看完这本书就会对Ruby的用法有更加清晰的理解,是从原理上把握的。你就知道why。         如把这两本书弄懂了,自然而然会想有更 ...
        在聚类分析中,尤其是文本聚类中通常要进行2对象间的相似性的比较,以便于将相似程度大的归为一组。这样的结果就是,一个组内的对象相似度大,而不同组之间对象的相似性小。这个就是所谓的聚类。以下说说在文本中聚类的实现。为了将文本分组,首先要将文本的相似性计算出来(我用的是22比较)。这时候的相似性就要有一个参照,这个标准通常是2文本中相同或相似字符。如果相同字符的次数与2文本的总长度之和的比较大的话,就认为这2个文本是相似的,否则,不相似。这种方式的效率不高(每2个文本都要进行比较,复杂度是n^2,n为文本的数量),但是比较出来的效果很可观。    下面是一个与此有关的代码片段: ...
    今天在csdn上看到了这么一篇文章只有10%的程序员能正确写出二分查找法,我看了觉得挺有意思的,c入门的时候也写过这个小程序,不过很多年没碰它了,还真有点生疏,我是到wikipedia重新看了一遍才写了如下代码的。没有测试,不知道是否完全正确。采用递归,各位还有无其他更好的方法? def search a,left,right,n if(right < left) return "not found" end mid=left+((right-left)/2) if(a[mid]>n) search(a,lef ...
到现在才明白,在IRB中写一个方法,就是给Object对象增加一个实例方法。以前还真没有注意到这个。在IRB中定义了一个方法: def alert(s) puts "#{s}" end 有实例化Proc对象: pp=Proc.new{puts "hello"} 在查看pp的方法: pp.methods.sort 结果看到:     当时还不理解。后来查资料才知道,写一个类似alert的方法,就是给Object增加一个实例方法,那么pp的methods中会出现alert方法就很正常了。     完全掌握ruby ...
Global site tag (gtag.js) - Google Analytics