随笔分类 - 数据挖掘:R
摘要:library(C50) train.idx<-sample(1:nrow(iris),100) iris.train<-iris[train.idx,] iris.test<-iris[-train.idx,] #训练和测试 modelc5<-C5.0(formula=Species~.,data
阅读全文
摘要:CART算法及R语言实现 CART 的英文是Classification And Regression Tree,直译即为分类回归树算法,简称CART算法,它是决策树的一种实现,通常决策树主要有三种实现,分别是 ID3算法、CART算法和C4.5算法。CART算法是一种二分递归分割技术,把当前样本划
阅读全文
摘要:PageRank算法 PageRank算法是谷歌搜索引擎的核心算法,该算法是由Larry Page和Sergey Brin在斯坦福大学读研时设计的,PageRank 的核心思想有两点。 ( 1 )如果一个网页被很多其他网页链接,说明这个网页比较重要,也就是PageRank值会相对较高; (2)如果一
阅读全文
摘要:SVM算法的R语言实现 1.SVM分类 (1)标准分类模型 library(e1071) data(iris) attach(iris) model<-svm(Species~.,data=iris) #标准分类模型 (2)多分类模型 #步骤1 数据集准备 x<-subset(iris,select
阅读全文
摘要:naiveBayes(朴素贝叶斯)算法的R语言实现 贝叶斯:在已知类条件概率密度参数表达式和先验概率前提下,利用贝叶斯公式转换成后验概率,最后根据后验概率大小进行决策分类。然而我们要学习的是朴素贝叶斯,朴素贝叶斯一个重要的假设就是变量独立,换句话说就是各个变量间互不影响,a变量的取值不会影响b变量取
阅读全文
摘要:kNN算法应用于iris数据集 K最近邻,顾名思义,就是K个最邻近的样本的意思。如果一个样本的最接近的K个邻居里,绝大多数属于某个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。KNN算法有两个关键点要注意。第一个关键点是K的确定,选择一个最佳的K值取决于数据分布情况。总的来说,较小的K值
阅读全文
摘要:Adaboost算法的R语言实现 具体说来,整个Adaboost迭代算法就3步: ( 1)初始化样本的权重:假如有N个样本,则每一个训练样本最开始时都被赋予相同的权重:1/N。 (2)重复以下步骤,直到达到停机条件:首先训练弱分类器,并不断更新样本权重。权重更新的依据如下:如果某个样本点被正确地分类
阅读全文
摘要:1 EM算法的R语言实现 #步骤1 数据集准备及其描述 library(mclust) mod1<-Mclust(iris[,1:4]) summary(mod1) #步骤2 构建EM算法模型,指定分3类 mod2<-Mclust(iris[,1:4],G=3) summary(mod2,param
阅读全文
摘要:Apriori算法的R语言实现 #步骤1 加载arules包 #install.packages("arules") library(arules) #步骤2 建立Apriori模型 data(Groceries) #调用数据文件 frequentsets<-eclat(Groceries,para
阅读全文
摘要:CART算法的R语言实现 #步骤1 数据预处理,建立训练集和预测集 loc <- "http://archive.ics.uci.edu/ml/machine-learning-databases/" ds <- "breast-cancer-wisconsin/breast-cancer-wisc
阅读全文
摘要:k-means聚类算法的R语言实现 K-means算法假设要把样本集分为c个类别,算法描述如下:(1)随机选择c个类的初始中心; (2)在第n次迭代中,对任意一个样本,求其到每一个中心的距离,将该样本归到距离最近的中心所在的类; (3)更新该类的中心值,一般利用均值、中位点等方法; (4)对于所有的
阅读全文
摘要:C4.5算法的R语言实现 #步骤1 数据集准备 library(sampling) #用于实现数据分层抽样 library(party) #用于实现决策树算法 set.seed(100) #设置随机种子 head(iris) str(iris) dim(iris) class(iris) n=rou
阅读全文
摘要:链接: 条件推断树、决策树 : https://www.cnblogs.com/YY-zhang/p/15152971.html 随机森林: https://www.cnblogs.com/YY-zhang/p/15152992.html SVM :https://www.cnblogs.com/Y
阅读全文
摘要:1 K最近邻 这部分即将要讨论的K最近邻和后面的有权重K最近邻算法在R中的实现,其核心函数 knn()与 kknn()集判别规则的“建立”和“预测”这两个步骤于一体,即不需在规则建立后再使用predict()函数来进行预测,可由knn()和 kknn()一步实现。 按照次序向knn()函数中依次放入
阅读全文
摘要:1 朴素贝叶斯分类 我们使用NaiveBayes()函数来实现朴素贝叶斯分类算法,我们分为两种函数格式来分别介绍: #install.packages("klaR") library(klaR) library("MASS") (1)公式 formula格式 以nmkat为待判别变量,以datatr
阅读全文
摘要:应用案例 1 线性判别分析 执行线性判别分析可使用lda()函数,且该函数有三种执行形式,依次尝试使用。 (1)公式formula格式 我们使用nmkat变量作为待判别变量,其他剩余的变量作为特征变量,根据公式nmkat~使用训练集数据来运行lda()函数: library(MASS) librar
阅读全文
摘要:数据集 我们选用kknn软件包中的miete数据集进行算法演示,该数据集记录了1994年慕尼黑的住房租金标准中的一些有趣变量,比如房子的面积、是否有浴室、是否有中央供暖、是否供应热水等,这些都影响并决定着租金的高低。 1 数据概况 library(kknn) data(miete) head(mie
阅读全文
摘要:R中的实现 1 相关软件包 R中的实现主要涉及4个软件包中的相关函数,它们依次为MASS.klaR、class和 kknn。 其中,MASS包的名称为Modern Applied Statistics with S的缩写,即S语言的现代应用统计, 该包中含有大量实用而先进的统计技术函数及适用数据集;
阅读全文
摘要:判别分析 比较理论一些来说,判别分析就是根据已掌握的每个类别若干样本的数据信息,总结出客观事物分类的规律性,建立判别公式和判别准则;在遇到新的样本点时,再根据已总结出来的判别公式和判别准则,来判断出该样本点所属的类别。 1 概述 三大类主流的判别分析算法,分别为费希尔(Fisher)判别、贝叶斯(B
阅读全文
摘要:R中的实现 1 相关软件包 R中两个专用于关联分析的软件包-—arules 和 arulesViz。其中,arules用于关联规则的数字化生成,提供Apriori和 Eclat这两种快速挖掘频繁项集和关联规则算法的实现函数;而arulesViz软件包作为arules 的扩展包,提供了几种实用而新颖的
阅读全文