小编Uma*_*mao的帖子

甘特图与R

有没有人用R来创建甘特图?我所知道的唯一解决方案是这个,但我正在寻找更复杂的东西,如果可能的话(看起来或多或少像这样或者这样).

PS我可以没有依赖箭头.

charts r gantt-chart

80
推荐指数
8
解决办法
5万
查看次数

在ggplot2中定义最小点大小 - geom_point

假设我在0,1和10左右有很多值.我已经映射了它们,即:

geom_point(aes(size=value))
Run Code Online (Sandbox Code Playgroud)

..这给我一个像这样的图像: 在此输入图像描述

很难看到很小的一点.所以我想知道我是否可以设置点大小的缩放框架.附:

scale_size_area(max_size=8)
Run Code Online (Sandbox Code Playgroud)

我可以设置最大尺寸,但不能设置最小尺寸.我可以log10我的数据导致几乎没有点大小差异.最好定义最小尺寸和最大值,省略指定的分布(例如,可以使用scale_colour_gradient).

r ggplot2

30
推荐指数
1
解决办法
2万
查看次数

如何结束'调试'模式?

在RStudio中,我开始了一个调试模式

debug(ls)
ls()
Run Code Online (Sandbox Code Playgroud)

然后我不知道如何结束这种模式.提示改为

Browse[2]>
Run Code Online (Sandbox Code Playgroud)

如何结束此调试模式?

debugging r rstudio r-faq

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

如何将URL添加到R markdown?

我想将一个URL链接引用到R markdown,我已经尝试过输入,例如"addlink"或"address < - ...."它们都不起作用.如何在R markdown中添加链接?

谢谢!

编辑:评论的op代码是

   {r} [linked phrase] (www.bit.ly/1EqAdIp)
Run Code Online (Sandbox Code Playgroud)

r hyperlink knitr r-markdown

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

如何从数据框中删除部分重复项?

我导入的数据描述了在不同位置进行的数值测量,以获得或多或少均匀分布的时间戳.有时这种"均匀分布"并不是真的,我必须丢弃一些值,只要每个位置的每个时间戳都有一个值,那么哪个值并不重要.

我对数据做了什么?我将它添加到resultdata.frame.我有一个timestamp列和timestamp列中的值,它们肯定是根据的间隔均匀分布的step.

timestamps <- ceiling(as.numeric((timestamps-epoch)*24*60/step))*step*60 + epoch
result[result$timestamp %in% timestamps, columnName] <- values
Run Code Online (Sandbox Code Playgroud)

当我的时间戳落在同一时间步时,这不起作用.这是一个例子:

> data.frame(ts=timestamps, v=values)
                   ts         v
1 2009-09-30 10:00:00 -2.081609
2 2009-09-30 10:04:18 -2.079778
3 2009-09-30 10:07:47 -2.113531
4 2009-09-30 10:09:01 -2.124716
5 2009-09-30 10:15:00 -2.102117
6 2009-09-30 10:27:56 -2.093542
7 2009-09-30 10:30:00 -2.092626
8 2009-09-30 10:45:00 -2.086339
9 2009-09-30 11:00:00 -2.080144
> data.frame(ts=ceiling(as.numeric((timestamps-epoch)*24*60/step))*step*60+epoch,
+ v=values)
                   ts         v
1 2009-09-30 10:00:00 -2.081609
2 2009-09-30 10:15:00 -2.079778
3 2009-09-30 10:15:00 -2.113531
4 …
Run Code Online (Sandbox Code Playgroud)

r

11
推荐指数
2
解决办法
1万
查看次数

LatLng是否在多边形内

我在谷歌地图上有一个典型的多边形集,有一些latLng:

var bermudaTriangle = new google.maps.Polygon({
  paths: [
    new google.maps.LatLng(25.774252, -80.190262),
    new google.maps.LatLng(18.466465, -66.118292),
    new google.maps.LatLng(32.321384, -64.75737),
  ]
});
bermudaTriangle.setMap(map);
Run Code Online (Sandbox Code Playgroud)

这些是谷歌文件中的百慕大三角坐标.我也有一些随机的coords,saaay:

var coord1 = new new google.maps.LatLng(26.194876675795218,-69.8291015625)
var coord2 = new new google.maps.LatLng(33.194876675795218,-63.8291015625)
Run Code Online (Sandbox Code Playgroud)

第一个恰好在三角形内部,第二个在外面.这些只是一些例子,我需要的是一种方法来找出,如果一个提供的坐标(不只是这两个中的一个,任何协调)在多边形内部或外部(也不总是百慕大三角形,甚至不是三角形 - 多边形可以有任意数量的latLng).我查看了Google Maps API文档,但找不到任何能够解答此问题的函数.

javascript google-maps-api-3

6
推荐指数
1
解决办法
6076
查看次数

带有嵌套 `ggforce::facet_zoom` 的 Facet wrap 图

我想使用ggplot2::facet_wrapfacet_grid使用使用ggforce::facet_zoom.

我也很乐意以与 类似的方式将它们排列起来facet_grid,最好使用条形文本标签,但也不太明白如何让它起作用。

例如一个分面图

library(ggplot2)
library(ggforce)
library(dplyr)

p1 <- ggplot(mtcars) +
  geom_boxplot(
    aes(
      x = factor(gear),
      y = mpg,
      fill = factor(gear)
    )
  ) +
  facet_wrap(
    facets = ~cyl,
    nrow = 2,
    scales = "free_y"
  )

p1
Run Code Online (Sandbox Code Playgroud)

但是每个方面都应该是这样的(这是上面的第一个方面):


zoomlims <- data.frame(
  cyl = c(4, 6, 8),
  lower = c(27, 18, 13),
  upper =c(32, 21, 17)
)

p2a <- ggplot(mtcars %>% filter(cyl == 4)) +
  geom_boxplot(
    aes(
      x = factor(gear),
      y = mpg, …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 ggforce

6
推荐指数
1
解决办法
542
查看次数

为什么在 R Notebook 中设置工作目录不会更改控制台中的工作目录?

Rstudio 声明:

\n\n
\n

笔记本块内的当前工作目录始终是包含笔记本 .Rmd 文件的\n 目录。

\n
\n\n

明白了。但是,如果在笔记本中我们setwd()执行某些操作(无论是“包含笔记本 .Rmd 文件的目录”还是其他地方,都无关紧要),这不会在控制台中设置工作目录,而只会在笔记本中设置。

\n\n

反之亦然,在控制台中设置工作目录不会更改笔记本 \xe2\x80\x94 中的工作目录,尽管上面对此有所解释。

\n\n

在控制台和笔记本中设置工作目录的唯一方法似乎是setwd()在控制台和笔记本中运行相同的调用。

\n\n

为什么?

\n\n

有没有什么方法可以简化此操作,以便在进行调用后,笔记本和控制台的工作目录自动相同setwd(),而不是令人困惑地拥有两个“并行”工作目录?

\n\n

人们假设一个人并不是唯一一个在笔记本上工作的人,而是在做“肮脏的工作”并快速检查一个人没有计划保留在控制台中。因此,这种工作目录行为非常令人沮丧。

\n

r rstudio r-markdown rnotebook

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

在R中指定NA类(对于if_else,dplyr)

if_else()函数中dplyr,它要求if:TRUE和if:FALSE元素属于同一个类.

我希望NA从我的if_else()发言中回复.

但是,例如

if_else(mtcars$cyl > 5, NA, 1)
Run Code Online (Sandbox Code Playgroud)

回报

错误:false类型'double'不是'逻辑'

因为简单地读入NA是合乎逻辑的,1是数字(双重).

包裹as.numeric()周围的NA正常工作:例如,

if_else(mtcars$cyl > 5, as.numeric(NA), 1)
Run Code Online (Sandbox Code Playgroud)

回报

1 NA NA 1 NA NA NA NA 1 1 NA NA NA NA NA NA NA NA 1 1 1 1 NA NA NA NA 1 1 1 NA NA NA 1

正如我所希望的那样.

但这感觉有点傻/不必要.是否有更好的输入方式NA作为" 数字NA "而不是像这样包装?

NB这仅适用于严格的dplyr::if_else不是base::ifelse …

r dplyr

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

列表中的 bind_rows 错误:“列 `Chr` 无法从整数转换为字符”

我有一个包含 40 个的列表tbl_df,我正在尝试使用bind_rows(). 所有元素都具有相同数量的列并且列具有相同的名称。我已经生成了一个ID包含列表中每个元素名称的列,因此无需使用该ID参数。

运行命令后bind_rows(list),我收到此错误:

Chr不能从整数转换为字符。

在这种情况下,Chr 代表“染色体”而不是字符,这些值应保留为整数。由于列名为“Chr”,dplyr 是否会自动尝试强制转换为字符?如果是这样,我如何避免 dplyr 这样做?命令会这样做是没有意义的,但我不确定还会发生什么。

仅供参考,当我尝试仅显式组合列表的前两个元素时,这非常有效,即 bind_rows(list$element1, list$element2).

***这是我的第一个SO问题,我是R和一般编码的新手。如果我违反了有关发帖的规则,请原谅。让我知道如何改进我的帖子/问题,我很乐意在未来修复。

r dplyr

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