小编Ale*_*lex的帖子

如何将x和y轴的截距放在(0,0)处,并将x和y轴延伸到绘图的边缘

假设我想绘图x^2.我可以使用curve()如下.

curve(x^2, -5, 5)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 但是,我希望轴经过(0,0).我可以做如下的事情:

curve(x^2, -5, 5, axes=FALSE)
axis(1, pos=0)
axis(2, pos=0)
abline(h=0)
abline(v=0)
Run Code Online (Sandbox Code Playgroud)

我最终得到了类似下面的东西,看起来还不错.但我唯一的抱怨是,这种绘制轴的方式使得实际轴 - 例如x轴的-4到4之间的段 - 比右侧和左侧的段厚.y轴也是如此.我想知道是否有更好的方法来绘制轴.谢谢!

在此输入图像描述

plot curve r axes

18
推荐指数
1
解决办法
8475
查看次数

在创建R包时,错误['\ +'是字符串中以"\ +"开头的无法识别的转义符

我尝试使用我创建的一些函数和脚本创建一个包(在Mac上使用X11).虽然R CMD检查正在进行,但它遇到了如下问题:

temp = trim(unlist(strsplit(lp.add(ranefterms[[i]]), 
+                     "\+")))
Error: '\+' is an unrecognized escape in character string starting "\+"
Run Code Online (Sandbox Code Playgroud)

然而,奇怪的是,我的函数实际上没有"\ +".相反,它有"\\+"(见下文).所以我不知道为什么"\\+"被识别为"\ +".

for(i in 1:n)
   temp = trim(unlist(strsplit(lp.add(ranefterms[[i]]), '\\+')))
Run Code Online (Sandbox Code Playgroud)

为了进一步挖掘,我查看了Rcheck文件夹中的packageName-Ex.R文件.事实证明,在检查过程中所有的"\"都已更改为"\"(例如,我需要的两个斜杠,如strsplit()和grepl()等函数

我想知道它可能是什么原因.对不起,我无法想出一个可重现的例子......

x11 macos r package

17
推荐指数
1
解决办法
9893
查看次数

使用插入时如何获取 IDENTITY 值 ... OUTPUT with pyodbc

我正在尝试使用OUTPUT. 但是,我遇到了 HY010 错误。以下查询/代码是我使用的:

string = """
         SET NOCOUNT ON;
         DECLARE @NEWID TABLE(ID INT);

         INSERT INTO dbo.t1 (Username, Age)
         OUTPUT inserted.id INTO @NEWID(ID)
         VALUES(?, ?)

         SELECT ID FROM @NEWID
         """

cursor.execute(string, "John Doe", 35)
cursor.commit()
id = cursor.fetchone()[0]
Run Code Online (Sandbox Code Playgroud)

最后一行id = cursor.fetchone()[0]导致 HY010 错误(见下文)。任何建议将不胜感激!

pyodbc.Error: ('HY010', '[HY010] [Microsoft][ODBC SQL Server Driver]Function sequence error (0) (SQLFetch)')
Run Code Online (Sandbox Code Playgroud)

python sql-server pyodbc

14
推荐指数
2
解决办法
7123
查看次数

错误28000:使用pyodbc的用户DOMAIN \\用户登录失败

我试图使用Python通过使用Window身份验证连接到SQL数据库.我在这里查看了一些帖子(例如,这里),但建议的方法似乎不起作用.

例如,我使用了以下代码:

cnxn = pyodbc.connect(driver='{SQL Server Native Client 11.0}',
                      server='SERVERNAME', 
                      database='DATABASENAME',               
                      trusted_connection='yes')
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

Error: ('28000', "[28000] [Microsoft][SQL Server Native Client 11.0][SQL Server]
Login failed for user 'DOMAIN\\username'. (18456) (SQLDriverConnect); [28000] [Microsoft]
[SQL Server Native Client 11.0][SQL Server]Login failed for user 'DOMAIN\\username'. 
(18456)") 
Run Code Online (Sandbox Code Playgroud)

(请注意,我在上面的错误消息中分别用DOMAIN和替换了实际的域名和用户名username.)

我用我也试过UIDPWD,这就导致了同样的错误.

最后,我试图通过以下从上面的链接的建议,更改服务帐户,但我的电脑上,没有Log On标签,当我去Propertiesservices.msc.

我想知道我做错了什么以及如何解决这个问题.

python sql-server pyodbc

13
推荐指数
3
解决办法
2万
查看次数

R:有没有办法捕获所有的函数参数值

我写了一个制作情节的函数.我遇到的一个问题是需要生成可重现的图形.当然,一种解决方案是保存我生成的每个绘图的代码(即,保存我为函数参数设置的确切值).我想知道是否有一种方法可以捕获所有输入值,包括数据对象等,并将它们保存在列表中并将其作为输出返回.我想,一个简单的方法如下:

plot.foo <- function(x, main=NULL){
    plot(x, main=main)
    list(data=x, main=main)
}
Run Code Online (Sandbox Code Playgroud)

但是,我写的函数除了省略号参数(见下文)之外还有一堆参数,所以我想知道是否有更快的方法来保存所有的输入参数值.谢谢!

plot.foo <- function(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10,...){
     ...
}
Run Code Online (Sandbox Code Playgroud)

arguments r function

12
推荐指数
2
解决办法
3568
查看次数

在R中改变iGraph中顶点之间的间距

假设我想用以下数据制作一个图:

pairs <- c(1, 2, 2, 3, 2, 4, 2, 5, 2, 6, 2, 7, 2, 8, 2, 9, 2, 10, 2, 11, 4, 
           14, 4, 15, 6, 13, 6, 19, 6, 28, 6, 36, 7, 16, 7, 23, 7, 26, 7, 33,
           7, 39, 7, 43, 8, 35, 8, 40, 9, 21, 9, 22, 9, 25, 9, 27, 9, 33, 9,
           38, 10, 12, 10, 18, 10, 20, 10, 32, 10, 34, 10, 37, 10, 44, 10, 45,
           10, …
Run Code Online (Sandbox Code Playgroud)

plot r igraph

10
推荐指数
1
解决办法
5696
查看次数

函数内的update()只搜索全局环境?

我试着编写一个包装函数来批量进行似然比检验.我尝试包含update()来更新初始模型.但是,它似乎不是在函数内部查找对象,而是在全局环境中搜索对象.

fake <- data.frame(subj= rep(1:5, 4), 
                   factor1 = rep(LETTERS[c(1,2,1,2)], each=5), 
                   factor2 = rep(letters[1:2], each=10), 
                   data=sort(rlnorm(20)))

foo <- function(){
                  temp <- fake
                  model1 <- lmer(data~factor1*factor2 + (1 |subj), temp)
                  model1a <- update(model1, ~.-factor1:factor2)
                  model1a}
Run Code Online (Sandbox Code Playgroud)

它在下面给出了一条错误消息:

Error in eval(expr, envir, enclos) : object 'factor1' not found
Run Code Online (Sandbox Code Playgroud)

无论如何在函数内进行update()搜索?谢谢!

编辑:

我犯了一个错误.我想把"temp"传给lmer而不是"假".

EDIT2:建议的一个方便的解决方案是简单地指定数据对象.虽然update()现在没有问题,但anova()似乎认为我试图比较的模型是基于不同的数据对象

 foo <- function(){
                  temp <- fake
                  model1 <- lmer(data~factor1*factor2 + (1 |subj), data=temp)
                  model1a <- update(model1, ~.-factor1:factor2, data=temp)
                  anova(model1, model1a)
            }
 foo()
Run Code Online (Sandbox Code Playgroud)

我收到一条错误消息:

 Error in anova(model1, model1b) : 
   all models must be …
Run Code Online (Sandbox Code Playgroud)

environment r function

9
推荐指数
1
解决办法
2673
查看次数

如何在R中分离直方图的两个最左边的二进制位

假设我需要绘制如下数据集:

set.seed(1)
dataset <- sample(1:7, 1000, replace=T)
hist(dataset)
Run Code Online (Sandbox Code Playgroud)

正如您在下面的图中所看到的,两个最左边的垃圾箱之间没有任何空间,与其他垃圾箱不同.

在此输入图像描述

我尝试改变xlim,但它没有用.基本上我想将每个数字(1到7)表示为一个bin,另外,我希望任何两个相邻的bin在它们之间有空间...谢谢!

r histogram

7
推荐指数
1
解决办法
3163
查看次数

ggplot2:如何为由不同颜色的线连接的点指定多种填充颜色

我是新来的ggplot2.我想创建一个在其上有点的线图,其中点用不同的颜色填充点(参见下图). 在此输入图像描述 假设我正在使用的数据集如下:

set.seed(100)
data<-data.frame(dv=c(rnorm(30), rnorm(30, mean=1), rnorm(30, mean=2)), 
                 iv=rep(1:30, 3), 
                 group=rep(letters[1:3], each=30))
Run Code Online (Sandbox Code Playgroud)

我尝试了以下代码:

p<-ggplot(data, aes(x=iv, y=dv, group=group,  pch=group)) + geom_line() + geom_point()

p + scale_color_manual(values=rep("black",3))+ scale_shape(c(19,20,21)) + 
scale_fill_manual(values=c("blue", "red","gray"))

p +  scale_shape(c(19,20,21)) + scale_fill_manual(values=c("blue", "red","gray"))
Run Code Online (Sandbox Code Playgroud)

但我没有得到我想要的东西.我希望有人能指出我正确的方向.谢谢!

plot r colors ggplot2

7
推荐指数
1
解决办法
3万
查看次数

在R中用曲线(s-ish曲线)连接两个点

假设我想生成一种类似下面的树结构:

plot(0, type="n",xlim=c(0, 5), ylim=c(-3, 8), axes=FALSE, xlab="", ylab="", main="")
points(1, 2.5)
points(3, 5)
points(3, 0)
lines(c(1, 3), c(2.5, 5))
lines(c(1, 3), c(2.5, 0))
text(1, 2.5, adj=1, label="Parent   ")
text(3, 5, adj=0, label="   Child 1")
text(3, 0, adj=0, label="   Child 2")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我想知道是否有一种方法R可以产生类似于下面不同程度的S曲线的曲线.至关重要的是,如果能够在不诉诸的情况下创造这样的线路,那就太棒了ggplot.

在此输入图像描述

编辑删除并作出答案

plot r taxonomy

7
推荐指数
1
解决办法
1179
查看次数