小编hrb*_*str的帖子

将vertex.label放置在igraph中的圆形布局之外

我有一个圆形布局igraph.我希望顶点标签显示在圆形区域之外.试过玩vertex.label.cex,vertex.label.degree但没有奏效.请指教!

r igraph

4
推荐指数
1
解决办法
5431
查看次数

如何设置igraph图的大小?

我正在绘制这样的图形:

        ig.plot(graph, target=file, vertex_color=membership,
            vertex_label=[index for index, value in enumerate(graph.vs)],
            vertex_frame_width=0,
            palette=ig.ClusterColoringPalette(len(set(membership)) + 3))
Run Code Online (Sandbox Code Playgroud)

该图在单个页面上输出为PDF文件.它看起来不错,但节点太拥挤了.有没有办法拉开节点,以便我可以真正看到所有的边缘?我想增加情节的大小,但我不知道该怎么做.

以下是它现在的样子: 目前的情节

python plot r igraph

4
推荐指数
1
解决办法
3664
查看次数

R中tapply和aggregate的区别是什么?

Aaa <- data.frame(amount=c(1,2,1,2,1,1,2,2,1,1,1,2,2,2,1), 
                  card=c("a","b","c","a","c","b","a","c","b","a","b","c","a","c","a"))

aggregate(x=Aaa$amount, by=list(Aaa$card), FUN=mean)

##   Group.1    x
## 1       a 1.50
## 2       b 1.25
## 3       c 1.60

tapply(Aaa$amount, Aaa$card, mean)

##    a    b    c 
## 1.50 1.25 1.60 
Run Code Online (Sandbox Code Playgroud)

以上是示例代码.

看来,aggregatetapply两者都非常方便,并执行类似的功能.

有人可以解释或举例说明他们之间的差异吗?

aggregate r tapply

4
推荐指数
1
解决办法
6318
查看次数

列出可用的WFS图层并使用rgdal读入数据框

我根据不同的来源有以下问题它应该能够在R中读取WFS层使用rgdal.

dsn<-"WFS:http://geomap.reteunitaria.piemonte.it/ws/gsareprot/rp-01/areeprotwfs/wfs_gsareprot_1?service=WFS&request=getCapabilities"

ogrListLayers(dsn)
readOGR(dsn,"SIC")
Run Code Online (Sandbox Code Playgroud)

该代码的结果应该是1)列出可用的WFS层,2)将特定的层(SIC)读入R作为空间(点)数据帧.

我尝试了其他几个WFS服务器,但它不起作用.我总是收到警告:

Cannot open data source
Run Code Online (Sandbox Code Playgroud)

检查WFS驱动程序,我得到以下结果:

> "WFS" %in% ogrDrivers()$name
[1] FALSE
Run Code Online (Sandbox Code Playgroud)

好吧看起来WFS驱动程序没有在rgdal中实现(不再?)或者为什么有这么多例子"声称"相反?

我也尝试过这个gdalUtils包,但是它有效但是它给出了ogrinfo.exe的整个控制台消息,而不仅仅是可用的层.(我猜它"只是"调用ogrinfo.exe并将结果发送回R,就像使用[R shellsystem命令).

那么有谁知道我做错了什么,或者如果这样的东西甚至可能与rgdal任何类似的包裹?

r rgdal web-feature-service

4
推荐指数
1
解决办法
1966
查看次数

从bash脚本中生成并执行R,Python等脚本

我一直试图找到一个解决方案一段时间,但还没有找到任何令人满意的.我编写了很多bash脚本,但有时我想使用R或Python作为脚本的一部分.现在,我最终不得不写两个脚本; 原始bash脚本执行任务的前半部分,而R或Python脚本执行后半部分任务.我在bash脚本中调用R/Python脚本.

我对这个解决方案不满意,因为它将我的程序分成两个文件,这增加了事物不同步的机会,更多的文件要跟踪等等.有没有办法写一个包含整个文件的文本块我的R/Python脚本,然后将bash吐出到一个文件中并将参数传递给它并执行它?有更简单的解决方案吗?这比将简单的单行传递给R/Python更复杂,因为它通常涉及通过几个步骤创建和操作对象.

python bash r

4
推荐指数
2
解决办法
748
查看次数

R 错误:参数没有起始值

非线性真实世界数据,n=2,600

SAMPLE 
X values    71.33   74.98   80  85.35   90.03
Y values    119.17  107.73  99.72   75  54.59
Run Code Online (Sandbox Code Playgroud)

我手动绘制了一个起点的公式,

formula:  y = b/x^2+a
manual:   y = 800000/x^2-39.5
sum of residuals = 185
correlation forecast to actual =0.79 
Run Code Online (Sandbox Code Playgroud)

在 R 中使用 nls 公式,我收到一条错误消息:

a_start = -39.5
b_start = 800000
m<-nls(y~b/(x^2)+a, start=list(a=a_start,b=b_start))

Error in nls(y~ b/(x^2) + a, start = list(a = a_start, b = b_start)) : 
parameters without starting value in 'data': y, x
Run Code Online (Sandbox Code Playgroud)

不确定我在这里缺少什么。

r non-linear-regression

4
推荐指数
1
解决办法
7277
查看次数

RCurl没有下载URL内容

下载页面不起作用.这是我得到的错误:

Error in which(value == defs) : 
  argument "code" is missing, with no default
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

require(RCurl)
require(XML)

ok <- "http://www.okcupid.com/match?filter1=0,34&filter2=2,22,40&filter3=3,5&filter4=5,3600&filter5=9,486&filter6=1,1&locid=4265540&lquery=San%20Francisco,%20California&timekey=1&matchOrderBy=MATCH&custom_search=0&fromWhoOnline=0&mygender=m&update_prefs=1&sort_type=0&sa=1&using_saved_search=&count=50"

okc <- getURL(ok, encoding="UTF-8") #Download the page
okcHTML <- htmlParse(okc, asText = TRUE, encoding = "utf-8")
Run Code Online (Sandbox Code Playgroud)

xml r rcurl rvest

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

不要在 2 图例图 (R ggplot2) 中的颜色图例中显示形状

在我有 2 个图例(一个用于形状,一个用于颜色)的情节中,我的老板发现颜色图例已经选择了其中一种形状令人困惑。一个例子:

a <- data.frame(name = c("A","B","C","D"),
                type = c("dog","dog", "cat", "cat"),
                location = c("house", "house", "house", "garden"),
                count = c(3,1,5,8))

ggplot(a, aes(x=name, y=count, color=location, shape=type)) +
  geom_point(size=7)
Run Code Online (Sandbox Code Playgroud)

产生以下内容: 在此处输入图片说明

在此示例中,“位置”图例通过显示彩色圆圈来解释颜色(但圆圈也表示猫,这显然令人困惑)。如何强制“位置”图例仅显示颜色,而不是形状?也许将位置显示为红色和蓝色矩形会比较理想。

r colors legend shapes ggplot2

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

如何使矩阵可调用函数的元素

我想制作一个函数矩阵(我写的).然后以元素方式访问它们并调用.

所以,我有:func1(x),func2(y),func3(z)func4(t)那四个R的功能和我写的工作fine.They返回NUMERICS.

如果我这样做:

a_matrix <- matrix(c(a=func1,b=func2,c=func3,d=func4),2,2)
a_func<-a_matrix[1,1]
a_func(x)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

error:attempt to call non-function.
Run Code Online (Sandbox Code Playgroud)

如果我使用列表,而不是矩阵,

a_list<-list(a=func1,b=func2,c=func3,d=func4)
a_func<-list$a
a_func(x)
Run Code Online (Sandbox Code Playgroud)

给出预期的结果

typeof(list$a)
[1] "closure" 
Run Code Online (Sandbox Code Playgroud)

如果我做 :

typeof(a_matrix)
[1] "list"
typeof(a_matrix[1,1])
[1] "list"
Run Code Online (Sandbox Code Playgroud)

(我正在使用R 3.1.1)

r matrix

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

合并R中的数据列

我有一种情况,我有两个不同时间段的不同数据集.虽然许多列是相同的,但有些不是.这些"不同"列是应保留的辅助数据.

我想组合这两个数据集,留下NA不存在的值.请注意,这两个表没有任何外键,应该连接,只是堆叠在一起.

例:

data.a <- structure(list(lat = c(50L, -30L, -33L), lon = c(-40L, -30L, 
-50L), mag = c(3.5, 1.1, 2.3)), .Names = c("lat", "lon", "mag"
), class = "data.frame", row.names = c(NA, -3L))

data.b <- structure(list(lat = c(44L, -30L, -33L), lon = c(-40L, -30L, 
-55L), elev = c(1050, 2.4, 2.3)), .Names = c("lat", "lon", "elev"
), class = "data.frame", row.names = c(NA, -3L))

data.a
lat lon mag
 50 -40 3.5
-30 -30 1.1
-33 -50 2.3

data.b
lat …
Run Code Online (Sandbox Code Playgroud)

r dataframe

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