R语言
文章平均质量分 51
sanqima
这个作者很懒,什么都没留下…
展开
-
R语言给曲线添加标注和点注
在R语言中,可以使用text(x,y,“标注名称”)来给曲线加标注text,使用point(x,y,col,cex,pch)来给曲线加点注pch。 下面介绍,在抛物线上加标注和点注。//biaoZhu.R## 画3条曲线x <- seq(-10,70,0.01)y1 <- 1*x^2-50*x+600y2 <- 1*x^2-40*x+600y3 <- 1*x^2-30*x+600## 定义一个二次曲线f3 <- function(x,a,b,c原创 2021-03-01 15:53:46 · 12579 阅读 · 3 评论 -
R语言同时3条曲线到一个画布
在R语言中,可以使用"一次plot()+多次lines()"的方法,在一个画布里画多条曲线。下面介绍,在一个画布里画出3条反比例y = k/x 的曲线,如下: 绘制曲线的R语言源码如下: //draw.Rx <- seq(100,400,by=1)y1 <- 40000/xy2 <- 20000/xy3 <- 30000/xplot(y1 ~ x, type = "l",bty="l" ,col="red",xlab = "x", ylab = "原创 2021-02-24 11:56:16 · 9966 阅读 · 0 评论 -
关联分析中的Groceries数据集
用Apriori、FP Growth、eclat算法进行关联分析时中,常常用到Groceries数据集,该数据集是某个杂货店一个月真实的交易记录,共有9835条消费记录,139个商品。在开源软件RGui的arules程序包里含有Groceries数据集,保存格式是.rda,现在将它以.csv格式导出。详细步骤如下:原创 2015-11-26 15:40:30 · 17656 阅读 · 6 评论 -
R语言中的RC对象系统
R语言中常用的对象系统有S3、S4、RC、R6,其中S3和S4是基于泛型函数(generic function),而RC、R6是完全的面向对象。这里介绍RC对象系统。 RC是Reference classes的简称,又被称为R5,在R语言的2.12版本被引人,是R语言最新一代的面向对象系统。RC不同于原来的S3和S4对象系统,RC对象系统的方法是在类中自定的,而不是泛型函数。RC对象的行为更类原创 2015-12-26 11:08:36 · 2002 阅读 · 0 评论 -
用面向对象方法实现求圆和椭圆的周长与面积
设最底层的基类为Shape,Shape有周长和面积,圆Circle和椭圆Ellipse继承于Shape,设置计算周长的接口为circum(),计算面积的接口为area()。继承图表如下: 图(1) Shape、Circle和Ellipse之间的继承图表 用R语言里的S4结构,可以很方便地实现接口和继承,详细代码如下: //S4.R # part1 -----------------原创 2015-12-25 17:28:17 · 4565 阅读 · 0 评论 -
R语言里S4对象的泛型函数
R语言里,S4对象系统有专门的类定义函数setClass()和类的实例化函数new()。S4的泛型函数实现有别于S3的实现,S4分离了方法的定义和实现,如在其他语言中我们常说的接口和实现分离。通过setGeneric()来定义接口,通过setMethod()来定义实现类,这样可以让S4对象系统更符合面向对象的特征。 普通函数的定义和调用。> work <- function(x) cat(x,原创 2015-12-25 15:48:11 · 3102 阅读 · 1 评论 -
R语言里的数据绑定
在R语言里,可以使用%<a-%,%<c-%,%<d-%,rebind,<<-,进行绑定,分别为直接绑定、常量绑定、延迟绑定、重新绑定。 1. 直接绑定 %<a-% > library(pryr)> x %<a-% runif(1)> x[1] 0.7475925> x[1] 0.4454288> 2. 常量绑定 %<c-% > y %<c-% 4 + 2[1] 6> y原创 2015-12-24 19:14:41 · 2372 阅读 · 0 评论 -
用R来求解一元二次方程
在R语言中,可以用uniroot()函数来求解方程的某个单根,并且uniroot()的解区间x∈[a,b],要满足a*b<0。对于一元一次方程,需要调用uniroot()一次。对于一元二次方程,由于二次方程一般有2个根,所以需要调用uniroot()两次。 问题:一元二次方程ax^2+bx+c=0,设a=1,b=5,c=6,求x? 代码如下: //fang.R ##求一元二次方程原创 2015-12-23 15:41:27 · 37595 阅读 · 6 评论 -
关联分析中的支持度、置信度和提升度
1.支持度(Support) 支持度表示项集{X,Y}在总项集里出现的概率。公式为: Support(X→Y) = P(X,Y) / P(I) = P(X∪Y) / P(I) = num(XUY) / num(I) 其中,I表示总事务集。num()表示求事务集里特定项集出现的次数。 比如,num(I)表示总事务集的个数 num(X∪Y)表示含有{X,Y}的事务集的个数(个数也叫次数)。原创 2015-01-15 20:12:23 · 41616 阅读 · 13 评论 -
基于用户的协同过滤算法(Java实现或R语言实现
协同过滤的步骤是: 创建数据模型 —> 用户相识度算法 —>用户近邻算法 —>推荐算法。 基于用户的协同过滤算法在Mahout库中已经模块化了,通过4个模块进行统一的方法调用。首先,创建数据模型(DataModel),然后定义用户的相似度算法(UserSimilarity),接下来定义用户近邻算法(UserNeighborhood ),最后调用推荐算法(Recommender)完成计算过原创 2015-12-24 10:53:33 · 15453 阅读 · 5 评论 -
用R语言模拟掷硬币过程
硬币分为Head(正面)和Tail(反面),如果硬币是均匀的,那么出现Head和Tail的概率分别为50%、50%。把一枚硬币掷三次,结果有2*2*2=8种可能,分别为: HHH、HHT、HTH、HTT TTT、TTH、THT、THH 那么,样本空间(sample spaces): Ω\Omega={HHH、HHT、HTH、HTT、TTT、TTH、THT、THH},令xx是Ω\Om原创 2016-05-15 10:16:25 · 17667 阅读 · 0 评论 -
在直方图上添加线与图例
在R语言中,使用高级函数画出基本图形之后,可以使用低级绘图函数添加新的图形元素,如点、图例、标签等。低级绘图函数如图(1)所示。 图(1) 低级绘图函数 数据源:online shop.txt period amount2008 1281.82009 2630.02010 4610.02011 7846.52012 13040.02013原创 2016-05-05 14:44:56 · 13626 阅读 · 0 评论 -
R语言里的点样式pch
在R语言中,点的样式由pch的取值决定。 当pch取0~14时,其点为空心点,可以用户col(颜色)参数设置其边框的颜色; 当pch取15~20时,其点是实心点,可以用户col参数设置其填充的颜色; 当pch取21~25时,其点也是实心点,既可以用col参数设置边框的颜色,也可以用bg参数设置其内部的填充颜色。 pch不仅包括正方形、圆、上三角、倒三角、菱形等常规图形,还原创 2016-05-05 15:24:13 · 84847 阅读 · 2 评论 -
R语言的小技巧
1.代码提示 ----按 tab键2. 安装和加载某个packages : install.packages( XXX) library( XXX) 比如安装和加载MASS包: install.packages( MASS) library( MASS)3. 查看某个xxx包 里的数据集: data(package="XXX") 比如查看包mice里的数据集:data(package="mice") 查看包MASS里的数据集:data(p原创 2015-01-08 19:25:12 · 1857 阅读 · 0 评论 -
用R语言分析詹姆斯的客场得分
篮球小皇帝——勒布朗·詹姆斯(LeBron James), 1984年12月30日出生在美国·俄亥俄州·阿克伦,美国男子职业篮球运动员,司职小前锋,现效力于克利夫兰骑士队。 勒布朗·詹姆斯在2003年的NBA选秀大会中,首轮第一顺位被克利夫兰骑士队选中。2003-2010年,詹姆斯在骑士队效力7年,期间获得两届NBA最有价值球员(MVP)。2010年转会至迈阿密热火队,与德怀恩·韦德、克里斯·原创 2016-05-05 22:29:38 · 3077 阅读 · 2 评论 -
单因素下的方差分析
在方差分析中,有三个基本的假设: (1) 正态假设。对于因素的每个水平,其观测值都是来自正态总体的随机样本; (2) 方差齐次假设。各个总体的方差相同; (3) 独立假设。观测值之间都是独立的。 设试验中的因素AA,有rr个水平A1,A2,...,AnA_1, A_2, ..., A_n,在每个水平下进行试验得到结果xi1,xi2,...,xinix_{i1}, x_{i2}原创 2016-05-06 22:37:35 · 5280 阅读 · 2 评论 -
解决RStudio中"plot.new() : figure margins too large"问题
在RStudio中使用plot()函数进行画图时,常出现“plot.new() : figure margins too large”问题。如图(1)所示。 出现该问题的原因是,RStudio里的Plot窗口太小,可以适当调大一点,或者把RStudio设置为全屏。解决步骤如下。 1.用鼠标选中【Plots】选项卡,然后把该窗口拖到即可,如图(2)所示。 图(2) 将【Plo原创 2016-05-07 18:52:34 · 179858 阅读 · 16 评论 -
R语言输出九九乘法表
在R语言中,使用cat()函数可以将多个变量连接起来并输出到控制台或者File文件中。下面,以九九乘法表为例来演示cat()函数的用法。 //jiujiubiao.R ## 九九乘法表for(i in 1:9){ for(j in 1:i){ m = j*i cat(i,'*',j,'=',m,' ') } cat('\n')} 效果如下: 图(1) 使用c原创 2016-05-08 22:10:19 · 10081 阅读 · 0 评论 -
R语言的常用软件
1.RGui RGui是用于R语言开发的IDE,它是开源的,每隔大概3个月左右就有新版本在 Cran网站 http://cran.r-project.org/mirrors.html 下载。 这里推荐一个版本:R.2.15.3,该版本的稳定性较好,下载地址: http://download.csdn.net/detail/sanqima/8345997 或者在官网下载R.2.15.3: http://cran.r-project.org/bin/wind原创 2015-01-09 21:57:43 · 15991 阅读 · 0 评论 -
Python与R的区别与联系
中文原文:数据科学界华山论剑:R与Python巅峰对决 英文原文:Choosing R or Python for data analysis? An infographic 如果你是数据分析领域的新兵,那么你一定很难抉择——在进行数据分析时,到底应该使用哪个语言,R 还是Python?在网络上,也经常出现诸如“我想学习机器语言,我应该用哪个编程语言”或者“我想快速解决问题,我应该用R还是转载 2016-01-03 15:48:53 · 12324 阅读 · 1 评论 -
解决recharts不能安装问题
在R语言中,绘制基于HTML5的动态交互图片,需要用到rechart包,而rechart包没有发布到CRAN,这时可以加载devtools包,使用GitHub进行安装。详细步骤如下: 1.下载与R相对应的RTools。 2.在R的命令行窗口输入安装Rtools的命令:require(devtools); install_github('ramnathv/htmlwidgets'); ...原创 2015-12-30 17:51:01 · 7351 阅读 · 5 评论 -
Editplus批量修改字符串
Editplus是一个很方便的编辑器,使用它的正则表达式,可以很方便地进行字符串的批量修改。下面,考虑将lib2b.txt中的所有library() 替换为 install.packages(“”)。如图(1)所示: 图(1)要替换的文本内容 方法如下: 用Editplus打开lib2b.txt文件,按Ctrl+H—>勾选“正则表达式”、“当前文件”–》点击“全部替换”,如原创 2015-11-26 15:37:31 · 4877 阅读 · 0 评论 -
R语言中的t检验
两个数组的数据如下: 请用R语言,实现该数据的t检验。代码如下:> data1 <- read.table("d:/R_work/data/t.txt", header=T)> bmi <- data1$weight/data1$height^2> t.test(bmi, mu=22.5)效果如下:原创 2015-01-04 16:38:32 · 26771 阅读 · 3 评论 -
设置编程软件的背景颜色
编程时,如果背景色是白色,则编程久了眼睛就会酸痛,建议把软件的背景色设置为豆沙绿,这样有利于保护眼睛的视力。背景色的各个参数如下:色调:85饱和度:123亮度:205原创 2015-01-21 11:12:47 · 7596 阅读 · 0 评论 -
R语言中的几种图
R语言中,常见的图有直方图、箱线图、条形图、点阵图、饼图、QQ图。1.直方图 直方图是直观了解数据分布的常用图形,它将连续型数据分为等间距的组,并以矩形的高低来显示相应组中所含数据的频数或频率大小,有时可以显示数据的密度曲线作为辅助。这是一种简单快捷的探索数据分布的方式。2.箱线图 箱线图能够深入地展现数据分布的情况,它不仅能给出重要分位点的位置,原创 2015-01-15 22:14:28 · 6767 阅读 · 0 评论 -
用R语言预测鱼塘鱼尾的长度
分析:用wilcox.twst()函数完成Wilcox符号秩检验与 秩和检验。代码如下:##鱼尾的长度x <- c(13.32, 13.06, 14.02, 11.86, 13.58, 13.77, 13.51, 13.42, 14.44, 15.43)res5 14.6),length(x),al="less")print(res5) Exact binomial test原创 2015-01-13 23:10:36 · 1368 阅读 · 0 评论 -
二项分布的近似检测
例1,为了节约能源,某地区政府鼓励人们拼车出行,采取的措施是在指定的某些高速公路上,载有2人以上的车辆减收道路通行费。为了评价该项措施的效果,随机抽取了未减收路费路段的车辆2000辆,和减收路费路段的车辆1500辆,发现分别有652辆和576辆是两人以上的,这些数据能否说明该措施能提高合乘汽车的比率? 分析: 该案例可以采用二项分布的近似检验方法,设检验原创 2015-01-12 22:23:08 · 3542 阅读 · 0 评论 -
R语言中的线性判别分析
在R语言中,线性判别分析(Liner Discriminant Analysis,简称LDA),依靠软件包MASS中有线性判别函数lqa()来实现。该函数有三种调用格式:1)当对象为数据框data.frame时 lda(x,grouping,prior = propotions,tol = 1.0e-4,method,CV = FALSE,nu,...)2) 当对象为公式Formula时 lda(formula,data,...,subnet,na.action)3) 当对象为矩阵Matr原创 2015-01-11 14:28:33 · 19896 阅读 · 6 评论 -
用R语言解析字符串
常见字符串的字符串操作:合并与分割。1. 合并字符串 paste函数用于合并字符串,其基本形式为 paste( ..., sep=" "),其中的参数如表2-13所示: 示例代码如下:> data <- "4分50秒"> data <- paste("网站停留时间:","3小时",data,sep="")> data [1] "网站原创 2015-01-07 19:53:42 · 2373 阅读 · 0 评论 -
R语言中plot()函数里的6种边框
R语言中,设置plot(x,y,'..., bty="o",..)里参数bty,就可以不同的6种边框了。 bty可以取6种字符,分别为“o”、“l”、“7”、“c”、“u”、“]”。这些字符代 表6种边框。 bty=“o” 绘制图形的上边框、下边框、左边框和右边框;注意这是小写的O bty="l" 绘制图形的左边框和下边框;注意这是小写的L bty=原创 2015-01-22 17:33:42 · 40851 阅读 · 0 评论 -
R语言中的网格函数grid()
在R语言中,使用grid()函数可以在绘图的基础上添加网格线,其参数主要包括:ny用于设置水平网格的数目,nx用于设置垂直网格的数目。当设置为NA时,表示不绘制网格线。下面的表(一),是数据集Mushroom.dat在不同的阈值下,搜索频繁集所需要的时间。 用R语言,把上表里的数据转换为网格图,如下:x.text <- c(5,10,15,20,25)sales.v原创 2015-01-22 20:43:51 · 25789 阅读 · 0 评论 -
Java调用R并打包成可执行的jar
rJava是一个R语言和Java语言的通信接口,通过底层JNI实现调用,允许在R中直接调用Java的对象和方法。 rJava还提供了Java调用R的功能,是通过JRI(Java/R Interface)实现的。JRI现在已经被嵌入到rJava的包中,我们也可以单独试用这个功能。现在rJava包,已经成为很多基于Java开发R包的基础功能组件。 正式由于rJava是底层接口,并使用JNI作原创 2015-12-28 18:02:00 · 4847 阅读 · 5 评论 -
R语言里调用C++
使用Rcpp可以很方便地在.r脚本里调用C++函数。软件环境:R2.15.3+RStudio 0.99+RTools30.exe + Rcpp 1.在R2.15.3上安装Rcpp 打开R —》点击工具栏是的【程序包】—》设置CRAN镜像—》选择“Chian(Xiamen)”,如图(1)、(2)所示: 图(1) 点击“程序包” 图(2) 选择“China(Xiamen)”镜像原创 2015-12-11 21:27:36 · 10349 阅读 · 0 评论 -
R语言读取txt文件中的内容
在RGui中读取.txt文件中的内容,采用函数read.table(“xxx.txt”,head=TRUE|FALSE); 其中head=TRUE表示含有属性的标题,head=FALSE表示不含属性的标题。下面以读取exam0203.txt中的文件为例。 //exam0203.txt Name Sex Age Height WeightAlice F 13 56.5 84.0Becka原创 2015-10-30 11:27:15 · 144880 阅读 · 1 评论 -
R语言中同比增长和环比增长
同比增长:与上个周期的同一天或者同一个季度,进行对比。 环比增长:与同个周期的不同天或者不同季度,进行对比。 比如,本周星期三与上周星期三进行比较,就是同比, 本周星期三与本周星期二进行比较,就是环比。 下面,以某个论坛的军事科技版本的每日浏览量,来制造一个条形图,并依据上周和本周数据分为两组进行展示,进而分析同比增长与环比增长的区别。原始数据如表(一)所示。原创 2015-01-22 19:24:30 · 8849 阅读 · 1 评论 -
R语言中批量安装软件包
R是一种开源软件,在编程的时候,需要安装很多软件包,如果一个一个的安装,那将费时费力。由于R支持脚本语言,所以考虑用.R文件存放所有要用的软件包,比如MASS、lpSolve、arules等,然后运行这个.R文件,就可以进行批量安装了。 1. 首先,将R语言中的软件包,按照它们的依存关系,保存在一个.R文件中,比如lib2D.R //lib2D.Rinstall.packages("MASS原创 2015-04-10 20:33:37 · 12453 阅读 · 1 评论 -
设置RGui的背景颜色和字体
在用RGui编程时,常常要反复设置RGui字体和颜色,这比较繁琐。如果把字体和颜色保存到一个Rconsole文件里,下次打开RGui时,加载这个Rconsole文件,就自动设置了颜色和字体。 方法如下:点击RGui工具栏上的“编辑”–》GUI选项—》设置 Font: Courier New size: 12 background: SeaGreen2 如图(1)、图(2)所示:...原创 2015-04-10 18:21:51 · 5137 阅读 · 3 评论 -
R语言读取csv中的内容
1992年,R语言诞生。R语言是PC和Linux时代的产物,R语言和贝尔实验室开发的S语言类似,R支持一系列分析技术,包括统计分析、预测建模、数据可视化。在CRAN上可以找到众多的扩张包。 R软件 的首选界面是命令行界面,通过编写脚本来调用相应的功能函数。同时,它也支持图形界面。 R语言可以用来做数据挖掘,下面我们就用它来读取birth2.csv 中的内容。//原创 2015-01-06 19:22:28 · 5234 阅读 · 0 评论 -
解决colorspace安装问题
有时候,用RGui软件,安装packages时,会出现“XXX无法搬到XXX”,或者“XXX packages出现异常“。 产生上述问题的原因是,杀毒软件把这些packages当做病毒处理了,而无法安装成功。 解决方案:退出杀毒软件和带有杀毒功能的”电脑卫士“,比如:电脑管家、360安全卫士、360杀毒、金山杀毒、金山卫士、百度卫士和百度杀毒。1.先退出杀毒软件。2.原创 2015-01-08 18:52:37 · 2809 阅读 · 0 评论