小编hrb*_*str的帖子

月 - 年条形图以切面和填写年份; 以char格式输入数据作为日期

环境:赢得7 HP,R v2.15.1

我希望得到的:

  • 绘制y(数字)vs x(日期)
  • 标签月 - 月缩写,排序mon + year,las2垂直对齐
  • 颜色填充年份
  • 按年分面

我在这个论坛中阅读了不同的主题后尝试了不同的方法,但无法得到我需要的东西.需要帮忙.附加样本数据和结果.

我的样本数据

x <- c("04-01-10","05-01-10","06-01-10","07-01-10","08-01-10","09-01-10","10-01-10","11-01-10","12-01-10","01-01-11","02-01-11","03-01-11","04-01-11","05-01-11","06-01-11","07-01-11","08-01-11","09-01-11","10-01-11","11-01-11","12-01-11","01-01-12","02-01-12","03-01-12","04-01-12","05-01-12","06-01-12")
y <- c(120,210,130,160,190,210,80,70,110,120,140,160,130,200,110,180,210,200,90,60,100,100,120,170,100,180,120)
Run Code Online (Sandbox Code Playgroud)

x是mm-dd-yy格式的日期(字符)tz:IST(加尔各答/亚洲)数据每个月只有单个y值,这个值在月份的开始日期

转换为数据框架

MySample <- data.frame(x) ## convert to dataframe 
MySample$y <- y
Run Code Online (Sandbox Code Playgroud)

加载所需的库

require(lubridate) 
require(ggplot2)
Run Code Online (Sandbox Code Playgroud)

MySample Base Plot

1)绘制x对y

    ggplot(MySample, aes(MySample$x, MySample$y)) + 
        geom_bar(y=MySample$y,stat="identity") 
Run Code Online (Sandbox Code Playgroud)

给我基础情节结果

2)绘图x vs y + fill =年

    ggplot(MySample, aes(MySample$x, MySample$y, fill=year(MySample$x))) + 
        geom_bar(y=MySample$y,stat="identity")
Run Code Online (Sandbox Code Playgroud)

给了我填充,但有2010年,2010,2010.5,2011,2011.5,2012填写5年

我尝试了不同的方法,但遇到了一个或另一个错误.

3)绘图x vs y + fill =年+ facet_grid(年)

    ggplot(MySample, aes(x, y, fill=year(x))) + 
        geom_bar(y=MySample$y,stat="identity") + 
        facet_grid(. ~ year(MySample$x)) 
Run Code Online (Sandbox Code Playgroud)

获取:layout_base中的错误(data,cols,drop = drop):至少一个图层必须包含用于构面的所有变量 …

r ggplot2

5
推荐指数
1
解决办法
8414
查看次数

R devtools:文档Dependency包不可用

你好我下面教程这里从希拉里和这里从哈德利韦翰试图创建一个虚拟包.

但是,我的包需要一些外部依赖项XML,RCurl在这种情况下,当我运行命令文档时,它会抱怨:

> setwd('/home/datafireball/projects/Rprojects/rgetout/rgetout')
> document()
Error: could not find function "document"
> library(devtools)
> document()
Updating rgetout documentation
Loading rgetout
Loading required namespace: XML
Error in (function (dep_name, dep_ver = NA, dep_compare = NA)  : 
  Dependency package XML not available.
> 
Run Code Online (Sandbox Code Playgroud)

这是我的DESCRIPTION档案.

Package: rgetout
Title: A R package to get all the outlinks for a given URL
Version: 0.1
Authors@R: "Eric Cartman <Eric.Cartman@gmail.com> [aut, cre]"
Description: This package is …
Run Code Online (Sandbox Code Playgroud)

r devtools

5
推荐指数
2
解决办法
3552
查看次数

重复或循环参数

我对R很熟悉,因为我已经使用它几年了.不幸的是,我不太精通创建涉及循环或重复方程的函数.问题如下:

我有一个包含超过1000个值的向量.我想计算两个相等大小的并置方法与该向量的子集之间的绝对差值.

这是一个例子.

我有长度为8的向量(vec)

 [1]  0.12472963  1.15341289 -1.09662288 -0.73241639  0.06437658 -0.13647136 -1.52592048  1.46450084  
Run Code Online (Sandbox Code Playgroud)

我想计算前2个值的平均值(0.12472963,1.15341289)并获得与以下2个值(-1.09662288 -0.73241639)的平均值的绝对差值,然后沿着向量工作.

在这种情况下,我可以轻松使用以下等式:

abs(mean(vec[1:2])-mean(vec[3:4]))
Run Code Online (Sandbox Code Playgroud)

并逐步增加每个数字1,以便手动向下工作直到向量结束.我会得到以下矢量.

[1]  1.553591  0.3624149  0.8784722  0.497176  0.005337574
Run Code Online (Sandbox Code Playgroud)

然而,我希望有一个自动例程,使我可以在长向量上执行此操作并更改用于计算均值的值的数量.

在我看来它应该相对简单,但我不知道从哪里开始.

r vector repeat

5
推荐指数
1
解决办法
82
查看次数

使用ggplot和基本绘图函数获得不同的结果

我在这里有一张桌子:http://ulozto.cz/xAeP3Ahn/res2-txt.我试图从中得出一个点图.

我读了我的桌子:

res2<-read.table("res2.txt", header = TRUE, sep="\t")
Run Code Online (Sandbox Code Playgroud)

并创建2个图.

(1)这是单个绘图功能的脚本:

plot(res2$V2, res2$dist06, type = "n")
points(subset(res2$V2, year == 2006), subset(res2$dist06, year == 2006), pch = 19, col   = "red", cex = 1)
points(subset(res2$V2, year == 2007), subset(res2$dist06, year == 2007), pch = 19, col = "green", cex = 1)
points(subset(res2$V2, year == 2008), subset(res2$dist06, year == 2008), pch = 19, col = "black", cex = 1)
points(subset(res2$V2, year == 2009), subset(res2$dist06, year == 2009), pch = 19, …
Run Code Online (Sandbox Code Playgroud)

charts plot r subset

5
推荐指数
1
解决办法
254
查看次数

在R中搜索javascript网站

我想从这个网址中删除匹配时间和日期:

http://www.scoreboard.com/game/rosol-l-goffin-d-2014/8drhX07d/#game-summary

通过使用chrome dev工具,我可以看到这似乎是使用以下代码生成的:

<td colspan="3" id="utime" class="mstat-date">01:20 AM, October 29, 2014</td>
Run Code Online (Sandbox Code Playgroud)

但这不是源html.

我认为这是因为它的java(纠正我,如果我错了).如何使用R抓取此信息?

javascript screen-scraping r rvest

5
推荐指数
1
解决办法
4105
查看次数

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

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

r igraph

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

使用regex将URL解压缩到新的数据框列中

我想使用正则表达式从数据框中的文本中提取所有URL到新列.我有一些旧的代码,我用来提取关键字,所以我想调整代码为正则表达式.我想将正则表达式保存为字符串变量并在此处应用:

data$ContentURL <- apply(sapply(regex, grepl, data$Content, fixed=FALSE), 1, function(x) paste(selection[x], collapse=','))
Run Code Online (Sandbox Code Playgroud)

似乎fixed=FALSE应该告诉grepl它是一个正则表达式,但R不喜欢我试图将正则表达式保存为:

regex <- "http.*?1-\\d+,\\d+"
Run Code Online (Sandbox Code Playgroud)

我的数据组织在这样的数据框中:

data <- read.table(text='"Content"     "date"   
 1     "a house a home https://www.foo.com"     "12/31/2013"
 2     "cabin ideas https://www.example.com in the woods"     "5/4/2013"
 3     "motel is a hotel"   "1/4/2013"', header=TRUE)
Run Code Online (Sandbox Code Playgroud)

希望看起来像:

                                           Content       date              ContentURL
1               a house a home https://www.foo.com 12/31/2013     https://www.foo.com
2 cabin ideas https://www.example.com in the woods   5/4/2013 https://www.example.com
3                                 motel is a hotel   1/4/2013                        
Run Code Online (Sandbox Code Playgroud)

regex r grepl

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

在 R 中的 ggplot 中绘制树

我想知道是否可以通过ggplot绘制树?让我们说:

library(rpart
library(rpart.plot)

data(iris)
mod <- rpart(Species~., data=iris)
prp(mod)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我可以在 ggplot 中绘制类似的图形吗?

tree r ggplot2

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

从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
查看次数