数据帧D1中的分类变量V1可以具有由A到Z的字母表示的值.我想创建子集D2,其排除一些值,例如B,N和T.基本上,我想要一个命令,即相反的 %in%
D2 = subset(D1, V1 %in% c('B','N',T'))
Run Code Online (Sandbox Code Playgroud) 每次我使用ggplot创建一个情节时,我会花一点时间尝试不同的值来调整hjust和vjust
+ opts(axis.text.x = theme_text(hjust = 0.5))
Run Code Online (Sandbox Code Playgroud)
使轴标签在轴标签几乎接触轴的位置排成一行,并与轴齐平(可以说是轴对齐).但是,我真的不明白发生了什么.通常情况下,hjust = 0.5会产生如此显着不同的结果hjust = 0.6,例如,我只是通过玩弄不同的值来解决这个问题.
谁能指点我对hjust和vjust选项如何工作的全面解释?
我已经创建了一些R代码供那些对R一无所知的人使用(虽然我自己很漂亮).我一直让人们将初始数据粘贴到R控制台(结果混合),我希望为人们设置一种更友好的用户输入数据的方式.
理想情况下,有人可以坐在控制台上,键入命令,并提示有关如何输入数据的特定问题.
例如,一个人加载r并看到提示:
What is x value?
Run Code Online (Sandbox Code Playgroud)
该人员输入:
2
Run Code Online (Sandbox Code Playgroud)
下一个提示:
What is y value?
Run Code Online (Sandbox Code Playgroud)
人员类型:
3
Run Code Online (Sandbox Code Playgroud)
下一个提示:
What are T values?
Run Code Online (Sandbox Code Playgroud)
人员类型:
4,3,2,1
Run Code Online (Sandbox Code Playgroud)
下一个提示:
什么是V值?
人员类型:
4,5,6,9
Run Code Online (Sandbox Code Playgroud)
使用这4个新定义的变量(X,Y,T,V),R的下一步是运行预先编写的代码
X+Y
V+T
Run Code Online (Sandbox Code Playgroud)
在控制台中弹出答案
5
8 8 8 10
Run Code Online (Sandbox Code Playgroud)
每个人都很开心
我道歉,因为这不是一个可重现的代码问题,但我不知道如何让R问问题而不是我问R问题!
我有一个非常大的zip文件,我试图将其读入R而不解压缩它如下:
temp <- tempfile("Sales", fileext=c("zip"))
data <- read.table(unz(temp, "Sales.dat"), nrows=10, header=T, quote="\"", sep=",")
Error in open.connection(file, "rt") : cannot open the connection
In addition: Warning message:
In open.connection(file, "rt") :
cannot open zip file 'C:\Users\xxx\AppData\Local\Temp\RtmpyAM9jH\Sales13041760345azip'
Run Code Online (Sandbox Code Playgroud) 有没有快速初始化空数据框的方法?如果您知道尺寸是多少?例如:
假设我想要一个包含100行和10行的空白数据框:
x <- data.frame(1:100,2,3,4,5,6,7,8,9,10)
dim(x) ## that's right
Run Code Online (Sandbox Code Playgroud)
但是假设我想要300列的东西?如何快速初始化data.frame中的列?
x <- data.frame(1:100,2,3,4,5 ....) ## *cries*
Run Code Online (Sandbox Code Playgroud) 我试图LEFT加入2个数据帧,但我不想加入第二个数据集中的所有变量:
举个例子,我有数据集1(DF1):
Cl Q Sales Date
A 2 30 01/01/2014
A 3 24 02/01/2014
A 1 10 03/01/2014
B 4 10 01/01/2014
B 1 20 02/01/2014
B 3 30 03/01/2014
Run Code Online (Sandbox Code Playgroud)
我想离开连接数据集2(DF2):
Client LO CON
A 12 CA
B 11 US
C 12 UK
D 10 CA
E 15 AUS
F 91 DD
Run Code Online (Sandbox Code Playgroud)
我可以使用以下代码离开联接:
merge(x = DF1,y = DF2,by ="Client",all.x = TRUE):
Client Q Sales Date LO CON
A 2 30 01/01/2014 12 CA
A 3 24 02/01/2014 12 CA
A …Run Code Online (Sandbox Code Playgroud) R帮助解释invisible()为"返回对象的临时不可见副本的函数".我很难理解invisible()用于什么.你能解释invisible()这个功能有用和什么时候有用吗?
我已经看到它invisible()几乎总是在方法函数中使用print().这是一个例子:
### My Method function:
print.myPrint <- function(x, ...){
print(unlist(x[1:2]))
invisible(x)
}
x = list(v1 = c(1:5), v2 = c(-1:-5) )
class(x) = "myPrint"
print(x)
Run Code Online (Sandbox Code Playgroud)
我在想,如果没有invisible(x),我将无法完成如下任务:
a = print(x)
Run Code Online (Sandbox Code Playgroud)
但事实并非如此.所以,我想知道它有什么invisible()作用,它在哪里有用,最后它在上面的方法打印功能中的作用是什么?
非常感谢您的帮助.
通过使用R,是否可以将2 ggplot放在一起(即,在同一图上)?我希望显示来自2个不同的数据帧趋势,而不是把他们一个挨着另一个,我想他们在一个情节集成在一起,只改变其中一个颜色(黑点).
更具体地说,我有以下2个视觉效果:
ggplot(visual1, aes(ISSUE_DATE,COUNTED)) + geom_point() + geom_smooth(fill="blue", colour="darkblue", size=1)
Run Code Online (Sandbox Code Playgroud)
和
ggplot(visual2, aes(ISSUE_DATE,COUNTED)) + geom_point() + geom_smooth(fill="red", colour="red", size=1)
Run Code Online (Sandbox Code Playgroud)
他们看起来像这样(两个都有黑点,我需要将其中一个更改为不同的东西):

和

我正在编写一个包,它定义了一个新类,测量器和一个print方法,即print.surveyor.我的代码工作正常,我使用roxygen进行内联文档.但R CMD check发出警告:
在文档对象'print.surveyor'中使用但不在代码中使用的函数/方法:print
我使用了Hadley编写的以下两页作为灵感:
命名空间和文档功能,两者都说正确的语法是@method function-name class
所以我的问题是:print使用Roxygen 记录我的新类的方法的正确方法是什么?更具体地说,我如何摆脱警告?
这是我的代码:(评论的文档表明试图解决这个问题,但没有一个工作.)
#' Prints surveyor object.
#'
#' Prints surveyor object
#'
## #' @usage print(x, ...)
## #' @aliases print print.surveyor
#' @param x surveyor object
#' @param ... ignored
#' @S3method print surveyor
print.surveyor <- function(x, ...){
cat("Surveyor\n\n")
print.listof(x)
}
Run Code Online (Sandbox Code Playgroud)
和氧化输出,即print.surveyor.Rd:
\name{print.surveyor}
\title{Prints surveyor object.}
\usage{print(x, ...)
#'}
\description{Prints surveyor object.}
\details{Prints surveyor object
#'} …Run Code Online (Sandbox Code Playgroud)