星期日, 十月 30, 2011

R语言基础入门之二:数据导入和描述统计

1 数据导入
对初学者来讲,面对一片空白的命令行窗口,第一道真正的难关也许就是数据的导入。数据导入有很多途径,例如从网页抓取、公共数据源获得、文本文件导入。为了快速入门,建议初学者采取R语言协同Excel电子表格的方法。也就是先用较为熟悉的Excel读取和整理你要处理的数据,然后“粘贴”到R中。

例如我们先从这个地址下载iris.csv演示数据,在Excel中打开,框选所有的样本然后“复制”。在R语言中输入如下命令:
data=read.table('clipboard',T)
这的里read.table是R读取外部数据的常用命令,T表示第一行是表头信息,整个数据存在名为data的变量中。另一种更方便的导入方法是利用Rstudio的功能,在workspace菜单选择“import dataset”也是一样的。

星期五, 十月 28, 2011

R语言基础入门之一:引言

1 什么是R语言
R语言是一个开源的数据分析环境,起初是由数位统计学家建立起来,以更好的进行统计计算和绘图,这篇wiki中包含了一些基本情况的介绍。由于R可以通过安装扩展包(Packages)而得到增强,所以其功能已经远远不限于统计分析,如果感兴趣的话可以到官方网站了解关于其功能的更多信息。

至于R语言名称的由来则是根据两位主要作者的首字母(Robert Gentleman and Ross Ihaka),但过于简短的关键词也造成在搜索引擎中很不容易找到相关的资料。不过这个专门的搜索网站可以帮到你。

星期四, 十月 27, 2011

rapidminer数据挖掘入门之四:建模和评价(完)

rapidminer中提供了大量的建模方法或学习器,可用于不同情况下的回归和分类问题。从常见的线性回归、决策树到神经网络和支持向量机。此外还提供了集成学习器,即将多个学习器组合使用以提高预测能力,例如Bagging和Boosting,以及Stacking。

这些学习器都可以看做是一个黑箱,输入数据,输出模型和预测结果。在使用这些学习器时要注意的一点就是:不同的学习器需输入的数据类型不同。以Decision Tree学习器为例,它可以输入numerical attributes(数值数据自变量)、binominal attributes(两分类数据自变量)、polynomial attributes(多分类数据自变量),以及polynominal label(多分类数据因变量) binominal label(两分类数据因变量),但它不能处理numerical label(数值数据因变量)。这些信息都可以在学习器上通过帮助信息了解。

星期二, 十月 25, 2011

rapidminer数据挖掘入门之三:特征选择

在一般数据分析条件下,样本集合就类似一个Excel表格,每个样本数据排为一行,而纵列则代表了样本不同的特征或属性。有时候样本数据的特征过多,甚至特征数超过样本数就形成所谓的“维灾难”。

维数过高对于大多数回归分类模型来说是难以忍受的,而且这么高维特征可能会大大干扰训练效果、降低分类性能,因此有必要采取措施进一步地降低特征空间的维数。降维过程包括两类方法:一种是特征选择又称为子集选择,即从最初的N个特征中选取n个特征,而这n个特征可以更简洁、更有效地表示样本的信息。另一种是数据变换,即把N个原始特征变换为n个新的特征,例如主成分分析、投影寻踪方法。

特征选择的一般思路是:构造一个评估函数,对特征子集中的每一个特征进行独立的评估,使每一个特征得到一个评估分,然后对所有特征按照其评估分大小进行排序,选取满足阀值的预定数目个特征形成特征子集。

星期四, 十月 20, 2011

rapidminer数据挖掘入门之二:数据导入、预处理和绘图

1 基本概念
当安装软件时rapidminer会问你新建库文件在所在地,也就是Repositories,它相当于是用户的所有资料存放地。库中主要存放两种资料:一种是建模需要的数据(Data),另一种是建模用到的模型,或称为流程(Processes)。在安装完软件后,用户可以从Repositories下面看到sample文件,里面提供了用来练习用的数据和模型。

2 数据导入
数据导入有两种方式:
第一种是在Repositories菜单中点击import,可以读取CSV等五种格式数据,导入后以data形式存在库中,可随时拖拽到主流程图中调用,将会显示为Retrieve。

第二种是以算子(Operators)形式导入,从算子中的import类中可以选择十几种导入算子拖拽到主流程图中,然后在设置窗口确定资料来源。

星期五, 十月 14, 2011

精确Logistic回归的R语言实现

Logistic回归(logistic regression)属于概率型非线性回归,是分析反应变量为独立分类资料的常用统计分析方法,由于对资料的正态性和方差齐性不做要求、对自变量类型也不做要求等,使得Logistic回归模型在医学研究各个领域被广泛用。Logistic回归的基本方法是极大似然方法,其前提是样本较大。但在样本量较小、数据结构较偏时,其结果会不可靠甚至无法求解。

精确Logistic回归(Exact logistic regression)则可以用来解决这一问题,该方法通过建立条件似然函数,进一步求出参数的充分统计量的分布函数。随着计算方法的发展和优化,也出现了使用马尔可夫链蒙特卡罗算法来模拟精确Logistic回归。R语言中的elrm包就可以实现这种算法。

互联网上的公开数据源

Sherlock Holmes有句名言:"Data! Data! Data! I can't make bricks without clay."同样,只有分析工具而没有数据,就如同手中握着锤子却找不到钉子。下面的公开数据源是引自该博文


Economics

Finance

星期三, 十月 12, 2011

推荐两本R语言新书

第一本:Getting Started with RStudio



Rstudio是最受欢迎的R语言GUI,这一点可以从kdnuggets.com的投票中显示出来。它的功能不会太简陋也不会太繁杂,而是将最需要的功能加以整合,显示在四个窗口内。Rstudio的主页上有不少相关的帮助资料,但随着软件的进化,详细的使用手册仍然欠缺。

星期六, 十月 08, 2011

Google Book中的民主与科学

不知道有多少人会象我这样后知后觉,直到最近才从科学网上知道了Google的一个好玩的东西,那就是Ngram Viewer。这是Google利用手里的数百万本数字化书籍制作了一个书籍词频统计器。之前曾作为Google Labs一员发布。用户可以对比多达5个词语在每年出版的图书里出现的次数多寡,支持英语、法语、德语、俄语、西班牙语和中文。

更棒的是所有数据都以创作共用形式授权免费下载和使用。而就在Google要关闭Google Labs的时候,很多项目都被迫下马了,但是幸运的是Ngram却是当之无愧的胜出者。Ngram图书浏览器成为了Google图书的一个成熟的部分。据开发人员爆料,Google图书包含了可追溯至1400年的约百万册图书,这大约占了所有发行过的书籍的10%。

星期六, 十月 01, 2011

RapidMiner数据挖掘入门之一:概要

1 简介
RapidMiner原名Yale,它是用于数据挖掘、机器学习、商业预测分析的开源计算环境。根据KDnuggets在2011年的一次投票显示,从使用率来看该软件比之R语言还要略胜一筹。因为其具备GUI特性,所以很适合于数据挖掘的初学者入门。

RapidMiner提供的数据挖掘和机器学习程序包括:数据加载和转换(ETL),数据预处理和可视化,建模,评估和部署。数据挖掘的流程是以XML文件加以描述,并通过一个图形用户界面显示出来。RapidMiner是由Java编程语言编写的,其中还集成了WEKA的学习器和评估方法,并可以与R语言进行协同工作。