小编lok*_*art的帖子

如何在R中粘贴"反斜杠点"(\.)组合?

作为标题,我正在研究R中的一些gregexpr,我需要搜索以点开头的东西,所以我需要使用"." (没有引用),但R一直说这是一个无法识别的逃脱.我能做什么?

谢谢!

regex r

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

使用R过滤掉数据帧列中的非连续数字

假设我有一个这样的数据帧:

DAYS   VALUE
1      A
2      A
3      A
5      A
7      A
9      A
10     A
12     A
13     A
14     A
15     A
Run Code Online (Sandbox Code Playgroud)

我试图导出一个函数,以便只保留一系列连续数字(最小值为3),如下所示:

DAYS   VALUE
1      A
2      A
3      A
12     A
13     A
14     A
15     A
Run Code Online (Sandbox Code Playgroud)

我想知道包中是否有任何功能可以做到这一点?

谢谢!

r

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

如何使用R将"TRUE FALSE"组合成"FALSE"?

我正在使用%in%以查看向量是否包含我需要的内容,如下所示:

> c(1,2)%in%1:4
[1] TRUE TRUE
> c(1,5)%in%1:4
[1]  TRUE FALSE
Run Code Online (Sandbox Code Playgroud)

对于第一种情况,我希望最终结果是单一的,TRUE而对于第二种情况,结果需要是单一的FALSE(即像AND真值表).

怎么做到呢?

谢谢.

r logical-operators

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

在ggplots中躲避geom_point以显示错误栏的估计值

我使用以下代码来展示一些测量值,它们的估计值和它们的CI:

ssi.oe.cutoffs.chart <- ggplot(data=oe.chart.data, aes(x=core_ot_code_mod, colour=cutoff))
ssi.oe.cutoffs.chart <- ssi.oe.cutoffs.chart + geom_hline(yintercept=1)
ssi.oe.cutoffs.chart <- ssi.oe.cutoffs.chart + geom_errorbar(aes(ymin=lcl95, ymax=ucl95, width=0.5),position="dodge")
ssi.oe.cutoffs.chart <- ssi.oe.cutoffs.chart + geom_errorbar(aes(ymin=SIR, ymax=SIR, width=0.5),position="dodge")
Run Code Online (Sandbox Code Playgroud)

core_ot_code_mod是一个离散变量,geom_errorbar它对我来说很完美,显示了2个具有不同颜色的躲避错误栏,但是我不能使用相似的代码让geom_point现在的方式相同.而我正在使用另一个geom_errorbar作为替代品,这不是很好.

这里的任何人都可以开导我吗?谢谢!

r ggplot2

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

在ggplot2中排列堆叠的geom_bar的顺序

我使用绘图一些饼图facet_wrapcoord_polar,让说我有因素与序列A,B,C.D,对于x轴,并使用facet_wrap(对于3个图表,让我们说)和coord_polar.我将有3个馅饼(馅饼X,Y,Z),以安排为A,B,C.D顺时针方向.

当我想level为每个方面单独重新排列因子时出现问题,例如:

   A  B  C  D
X 10 20 30 40
Y 20 30 40 10
Z 30 40 10 20
Run Code Online (Sandbox Code Playgroud)

我想要:

馅饼X到被布置为:A,B,C.D顺时针

馅饼Y中排列为:D,A,B.C顺时针

馅饼Z到被布置为:C,D,A.B …

r ggplot2

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

便携式R中的tcltk

我正在使用便携式R,我想尝试一下sqldf包,我可以加载sqldf包,但是运行一个sql语句并给我这样的消息:

> sqldf("select * from BOD where Time > 4")
Loading required package: tcltk
Loading Tcl/Tk interface ...Error : .onLoad failed in loadNamespace() for 'tcltk', details:
  call: NULL
  error: Tcl/Tk support files were not installed
Error: require(tcltk) is not TRUE
Run Code Online (Sandbox Code Playgroud)

我已经寻找解决方案,但大多数建议我安装R,这是不可能的,因为我使用便携式R.

我能做什么?谢谢.

r portable-applications

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

绕过R中循环内的错误

我有一个虚拟脚本如下:

a <- 1
b <- 2
c <- 3
e <- 5

list <- letters[1:5]

for (loop in (1:length(list)))
    {print(paste(list[loop],get(list[loop]),sep="-"))
    }

> source('~/.active-rstudio-document')
[1] "a-1"
[1] "b-2"
[1] "c-3"
Error in get(list[loop]) : object 'd' not found
Run Code Online (Sandbox Code Playgroud)

目前我有一个问题,因为d不存在,所以弹出一个错误信息并阻止处理e.

我想知道R是否有某种"错误处理",即绕过错误d,继续处理e,然后在处理完所有有效数据时返回错误信息.

谢谢.

error-handling r

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

使用ggplot绘制带孔的多边形(在城市地图中)

我有3个shp文件用于创建城市地图:

  • land.shp(多边形绘制在水面之上的土地)
  • road.shp(绘制所有道路的多边形,注意其中一些是"圆形道路",这意味着一个洞位于中间)
  • building.shp(绘制所有建筑物的多边形)

我使用QGIS来绘制我想要的地图,然后我使用ggplot来播放land.shp,然后使用road.shp并建立shp再次执行此操作.下面的一个是从谷歌地图输出来说明我的问题:

在此输入图像描述

你可以看到它们之间有2座桥和一些海(我没有海啸,我只是将背景设置为蓝色),用蓝点标记.在R中,该区域应该是一个洞,但它都是灰色的.同样的问题是使用红点标记的灰色区域,红点是一块土地,另一个灰色区域使用绿点标记,绿点是由道路环绕的建筑物.

我将在road.shp的洞里有土地/海洋/建筑物,我无法用R.展示它们.

任何人都可以教我如何展示R中road.shp层背后的东西吗?谢谢.

r shapefile ggplot2

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

具有多个孔的geom_polygon

我参考了这个问题的答案,还有其他问题.

我修改了如下代码:

library(ggplot2)

ids <- letters[1:2]

# IDs and values to use for fill colour
values <- data.frame(
  id = ids,
  value = c(4,5)
)

# Polygon position
positions <- data.frame(
  id = c(rep(ids, each = 10),rep("b",5)),
  #     shape      hole         shape        hole
  x = c(1,4,4,1,1, 2,2,3,3,2,   5,10,10,5,5, 6,6,7,7,6, 8,8,9,9,8),
  y = c(1,1,4,4,1, 2,3,3,2,2,   5,5,10,10,5, 6,7,7,6,6, 8,9,9,8,8)
)

# Merge positions and values
datapoly <- merge(values, positions, by=c("id"))

chart <- ggplot(datapoly, aes(x=x, y=y)) + 
  geom_polygon(aes(group=id, fill=factor(value)),colour="grey") +
  scale_fill_discrete("Key")
Run Code Online (Sandbox Code Playgroud)

并给出以下输出: …

r polygon ggplot2

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

生成股价达到历史新高的信号

我创建了一个虚拟股票价格xts对象,如下所示:

temp <- data.frame(date=as.Date("2010-01-01")+(0:99))
set.seed(1)
temp[,"price"] <- sample(1:100,nrow(temp),replace=TRUE)
# temp <- as.xts(temp[,"price"],order.by=temp[,"date"])

temp[,"record_hi"] <- FALSE

for (loop in (2:nrow(temp))) {
  if (all(temp[loop,"price"]>=temp[1:loop,"price"])) {
    temp[loop,"record_hi"] <- TRUE
  }
}
Run Code Online (Sandbox Code Playgroud)

我想创建一个信号,这样一旦价格达到历史最高水平,我在使用之前做了类似的事情,for-loop并且意识到我是如此愚蠢,因为不知道xts给出相同的输出更快.

如何使用xts?创建此类信号?

r xts

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