小编use*_*650的帖子

如何在 R 的 rfsrc 中指定公式

我有一个包含 10 个数字变量和一个因子的数据框 (train3)。

我想使用包中的rfsrc函数制作一个随机森林分类器 randomForestSRC

数据如下所示:

summary(train3)



roll_belt        pitch_belt          yaw_belt       total_accel_belt  gyros_belt_x        gyros_belt_y     
 Min.   :-28.90   Min.   :-55.8000   Min.   :-180.00   Min.   : 0.00    Min.   :-1.040000   Min.   :-0.64000  
 1st Qu.:  1.10   1st Qu.:  1.7600   1st Qu.: -88.30   1st Qu.: 3.00    1st Qu.:-0.030000   1st Qu.: 0.00000  
 Median :113.00   Median :  5.2800   Median : -13.00   Median :17.00    Median : 0.030000   Median : 0.02000  
 Mean   : 64.41   Mean   :  0.3053   Mean   : -11.21   Mean   :11.31    Mean   :-0.005592   Mean   : 0.03959  
 3rd …
Run Code Online (Sandbox Code Playgroud)

r

5
推荐指数
0
解决办法
2324
查看次数

无法访问数据帧列

当我打印结果时,我在结果3列数据框中有一些数据,我看到:

 results

TIMESTAMP                 SYMBOL_NAME         "t.price"
1 2014-10-17 14:00:00       GOOG                   400.25
Run Code Online (Sandbox Code Playgroud)

注意t.price列周围的""

当我去访问t.price列时,它返回null.

 results$t.Price
 NULL
Run Code Online (Sandbox Code Playgroud)

当我做

  names(results)   
Run Code Online (Sandbox Code Playgroud)

我知道了

[1] "TIMESTAMP"        "SYMBOL_NAME"        "\"t.PRICE\"" 
Run Code Online (Sandbox Code Playgroud)

你能告诉我发生了什么以及""出现的原因或我如何获得t.price?

r

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

ggplot:调整alpha/fill两个因子cdf

我有一些问题让我的ggplot alpha对我的情节来说足够黑暗.

示例代码:

ggplot(mtcars, aes(x=mpg, color=factor(gear), alpha=factor(carb))) + stat_ecdf()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

如您所见,无论何时carb == 1,都很难看到情节元素.在我的真实世界数据集中,颜色因子有四个级别,而alpha因子有两个级别.我希望alpha的颜色略浅一些,但比那个例子中的颜色更明显.

alpha r ggplot2 cdf

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

抑制打印到屏幕的平稳性测试的输出

如何stationarityfractal packageR中进行测试,不将任何输出打印到屏幕上.

例如,shapiro.wilk在将结果设置为变量时进行测试时,它不会给出任何输出,如下所示

lg.day.ret.vec <- rnorm(100, mean = 5, sd = 3)

shap.p <- shapiro.test(lg.day.ret.vec)$p.value
Run Code Online (Sandbox Code Playgroud)

这是大多数测试的情况,但是当我为stationarity测试做这个时,我在r控制台中获得了一些输出.

library(fractal)

stat.p <- attr(stationarity(lg.day.ret.vec),"pvals")[1]
1
2
3
4
5
6
N = 2609, nblock = 11, n_block_max = 238, dt =     1.0000
7
8
9
10
11
12
13
14
15
16
17
18
Run Code Online (Sandbox Code Playgroud)

r output statistical-test

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

剪切线以绘制区域并在绘制区域外显示文本

我想限制绘图的可见y范围。为了保留超出此范围的值,我需要设置oob超出范围),rescale_none并且效果很好。

但是,我还要在情节外的空白处添加一些文本。为此,我需要关闭剪辑。这样的结果是,超出界限的值在边距的绘图区域之外绘制。

无论如何,是否在页边距中绘制文本裁剪值以绘制区域?

#  Data
set.seed(1)
df <- data.frame( x=1:100,y=rnorm(100,mean=1,sd=1) )
# Basic plot

library(ggplot2)
library(scales)
library(grid)

g <- ggplot(df)+
geom_line(aes(x,y))


#  Values exceeding scale limits are dropped
g1 <- g + scale_y_continuous( limits = c(0,2) )
Run Code Online (Sandbox Code Playgroud)

OOB值下降

#  This is what I want
g2 <- g + scale_y_continuous( limits = c(0,2) , oob = rescale_none )
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

#  ...But, I would like to plot some text outside the plotting region
#  and need …
Run Code Online (Sandbox Code Playgroud)

graphics plot r ggplot2

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

如何使用 grid.arrange 移动图例位置

I\xc2\xb4m 尝试在页面中排列 4 个图,将图例放在底部中心

\n\n

我用它来获取其中一个图的图例(因为它们对于四个图来说是相同的)

\n\n
    get_legend<-function(myggplot){\n    tmp <- ggplot_gtable(ggplot_build(myggplot))\n    leg <- which(sapply(tmp$grobs, function(x) x$name) == "guide-box")\n    legend <- tmp$grobs[[leg]]\n    return(legend)\n    }\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后,我从任何情节中得到图例

\n\n
   legend <- get_legend(p2)\n
Run Code Online (Sandbox Code Playgroud)\n\n

所以对于我使用的图:

\n\n
 tt <-grid.arrange(arrangeGrob(p6, p7, p8, p9, legend,\n                          nrow = 2, #\n                          left = textGrob("Mammalian species richness", rot = 90, vjust = 1, \n                                          gp = gpar(fontsize = 12))))\n
Run Code Online (Sandbox Code Playgroud)\n\n

但我\xc2\xb4得到的是这样的:

\n\n

在此输入图像描述

\n\n

如何将图例移动到中心按钮并具有 2 行 2 列? \ncommands nrowncol没有工作,因为我收到了错误消息,也没有类似的东西

\n\n
tt  <- tt + theme(legend.position ="bottom"). …
Run Code Online (Sandbox Code Playgroud)

r data-visualization ggplot2 gridextra

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

是否有 R 函数来获取无向(非有向)网络中的唯一边?

我想计算无向网络中唯一边的数量,例如 net

   x  y
1  A  B
2  B  A
3  A  B
Run Code Online (Sandbox Code Playgroud)

这个矩阵应该只有一个唯一的边,因为边 AB 和 BA 对于无向网络是相同的。

对于有向网络,我可以通过以下方式获得唯一边的数量:

nrow(唯一的(net[,c("x","y"]))

但这不适用于无向网络。

r edges

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

在 flexdashboard 上,leafgl 点在我们平移或缩放之前是不可见的

加载后,WebGL 点在平移或缩放之前是不可见的。如何使它们在加载时立即可见?

加载后没有点出现:

在此输入图像描述

出现平移或缩放点后:

在此输入图像描述

下面的代码可以粘贴到 Rmd 中并进行编织:

---
title: "Untitled"
output: 
  flexdashboard::flex_dashboard:
    orientation: columns
    vertical_layout: fill
---

```{r setup, include=TRUE}
library(flexdashboard)
library(leaflet)
library(leafgl)
library(sf)

n = 100

df1 = data.frame(id = 1:n,
                 x = rnorm(n, 10, 3),
                 y = rnorm(n, 49, 1.8))

pts = st_as_sf(df1, coords = c("x", "y"), crs = 4326)

leaflet() %>%
  addProviderTiles(provider = providers$CartoDB.DarkMatter) %>%
  addGlPoints(data = pts, group = "pts") %>%
  setView(lng = 10.5, lat = 49.5, zoom = 6)
```
Run Code Online (Sandbox Code Playgroud)

最后,我的会话信息:

> sessionInfo()
R version …
Run Code Online (Sandbox Code Playgroud)

r leaflet flexdashboard

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

苦苦挣扎创造差异化功能

所以我有一个功课问题,我真的很难在R中编码.

这就是问题:编写一个函数difference(),它将一个向量X作为参数,并返回每个元素和下一个元素之间差异的向量: X[2]-X[1], X[3]-X[2], X[4]-X[3]等.

因此difference(c(5,2,9,4,8))会回来c(-3,7,-5,4)

到目前为止我有这个:

difference<-function(X) {
  for (i in X)
   X.val<-X[i]-X[i-1]
   return(X.val)
    }
difference(c(5,2,9,4,8))
Run Code Online (Sandbox Code Playgroud)

我似乎无法让函数减去它X[2]-X[1],它返回的数字比我运行函数时应该多一个.谁能帮我?

r function difference

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

增加 tableGrob 列标题大小和单元格大小

有没有办法增加tableGrob项目中列名的单元格?

library(grid)
d <- head(iris, 3)
g <- tableGrob(d)
grid.newpage()
grid.draw(g)
Run Code Online (Sandbox Code Playgroud)

默认:

在此处输入图片说明

我想要实现的目标(这是在 photoshop 中完成的): 在此处输入图片说明

任何帮助深表感谢。

r gridextra grob

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