小编Dav*_*e2e的帖子

为什么不应该在 R 包中使用 library() 或 require()

我的目标是创建使用其他库(例如 grid 和 ggplot2)的 R 包。
根据 https://tinyheero.github.io/jekyll/update/2015/07/26/making-your-first-R-package.html,据说 library() 或 require() 不应该用于一个 R 包。

我的问题是:
1)有什么原因吗?(因为,虽然我将 library("ggplot2") 和 library("grid") 放在我的包中的 R 脚本中,但它仍然有效)。
2)我是否必须在我的代码中删除 library("ggplot2") 和 library("grid") 并放置“::”,例如 ggplot2::geom.segment()?

有没有一种有效的方法可以将脚本转换为包?

dependencies r package ggplot2

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

使用变量块进行更长时间的透视

pivot_longer我在使用on 变量块时遇到问题。假设我有这个:

在此输入图像描述


我想要这个:

在此输入图像描述

dfwide <- structure(list(date = structure(c(1577836800, 1577923200, 1578009600, 
1578096000, 1578182400, 1578268800), class = c("POSIXct", "POSIXt"
), tzone = "UTC"), x1_a = c(20, 15, 12, NA, 25, 27), x1_b = c(33, 
44, 85, 10, 12, 3), x1_c = c(70, 20, 87, 11, 20, 5), x2_a = c(85, 
65, 33, 46, 82, 9), x2_b = c(87, 25, 55, 64, 98, 5), x2_c = c(77, 
51, 92, 20, 37, 98)), row.names = c(NA, -6L), class = c("tbl_df", 
"tbl", "data.frame")) 
Run Code Online (Sandbox Code Playgroud)
##Tried: …
Run Code Online (Sandbox Code Playgroud)

r reshape dplyr tidyr tidyverse

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

仅将 hclust 绘制到切割的簇,而不是每个叶子

我有一个包含近 2000 个样本的 hclust 树。我已将其切割成适当数量的簇,并希望绘制树状图,但以我切割簇的高度结束,而不是一直切割到每片叶子。每个绘图指南都是关于按簇为所有叶子着色或绘制一个盒子,但似乎没有什么可以完全保留切割线下方的叶子。

我的完整树状图如下所示:

完整的树状图

我想把它画出来,就好像它停在我在这里绘制 abline 的地方(例如):

在此输入图像描述

plot r dendrogram hclust

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

从R中的tibble到txt或excel文件

大家好:我正在使用tibbles来总结我的数据,现在我遇到了问题.我需要将我在tibble中的数据以excel或csv文件格式发送给合作伙伴.问题是它需要csv(或excel)文件处于特定的排列(没有整洁的数据),所以我想知道你是否可以帮助我一点点,至少,我的tibble到一个csv文件中在excel中编辑它的方法很容易.

这个元素看起来像这样:

# A tibble: 1,024 x 4
# Groups:   Treatment [16]
   Treatment    Pressure  mean   std
   <chr>           <dbl> <dbl> <dbl>
 1 "I Control "    0.     97.2  1.03
 2 "I Control "    0.689  94.1  1.35
 3 "I Control "    1.38   90.9  2.01
 4 "I Control "    2.07   89.5  2.20
 5 "I Control "    2.76   88.8  2.45
 6 "I Control "    3.45   87.6  2.88
 7 "I Control "    4.14   86.9  3.22
 8 "I Control "    4.83   83.9  5.53
 9 "I Control " …
Run Code Online (Sandbox Code Playgroud)

excel r tidyr tibble

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

ivot_longer() 和ivot_wider() 是否具有传递性?

我想对虹膜数据集使用函数pivot_longer()和pivot_wider()。这是延长数据的代码:

iris_ds <- iris %>% pivot_longer(-Species, names_to = "Measure", values_to = "Value")
Run Code Online (Sandbox Code Playgroud)

在文档中它说pivot_wider()是pivot_longer()的逆变换,所以我应用代码:

iris_or <- iris_ds %>% pivot_wider(names_from = "Measure", values_from = "Value")
Run Code Online (Sandbox Code Playgroud)

我得到下表:

    Species    Sepal.Length      Sepal.Width    Petal.Length    Petal.Width
    setosa     <dbl>             <dbl>          <dbl>           <dbl>
    versicolor <dbl>             <dbl>          <dbl>           <dbl>
    virginica  <dbl>             <dbl>          <dbl>           <dbl>
Run Code Online (Sandbox Code Playgroud)

这在 Gather() spread() 类似问题中得到了回答(建议使用 RowId),我想要的帮助是新函数pivot_longer和pivot_wider是否有一种方法来管理它以使其具有传递性。预先感谢您的答复。

r tidyr

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

R中的正则表达式:str_extract_all

我需要R中的正则表达式方面的帮助。

library(stringr)
text <- "Detailed Description, {type:status-update,activityText:Closed,date:2018-06-01T12:00:15+0200,status:Closed}, {type:status-update,activityText:Inprogress,date:2018-06-01T12:00:15+0200,status:Inprogress}, Responsible:ABC"

str_extract_all(text, "status-update.a")
Run Code Online (Sandbox Code Playgroud)

结果是:

[[1]]
[1] "status-update,a" "status-update,a"
Run Code Online (Sandbox Code Playgroud)

以同样的方式,我输入以下代码

str_extract_all(text, "status-update[[:print:]]+}")
Run Code Online (Sandbox Code Playgroud)

得到以下内容:这意味着以下是我的预期输出

[[1]]
[1] "type:status-update,activityText:Closed,date:2018-06- 
01T12:00:15+0200,status:Closed" "type:status- 
update,activityText:Inprogress,date:2018-06- 
01T12:00:15+0200,status:Inprogress"
Run Code Online (Sandbox Code Playgroud)

只是我想提取大括号中的位,但出现以下错误:

Error in stri_extract_all_regex(string, pattern, simplify = simplify,  : 
Syntax error in regexp pattern. (U_REGEX_RULE_SYNTAX)
Run Code Online (Sandbox Code Playgroud)

regex r stringr

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

如何从图中找到 R 中的局部最大值

我的编码有问题。我应该

  1. 绘制此方程的图形 [y=f(x)],其中 f(x) = (10*((x-1)^2)^(1/3))/(x^2 + 9) 对于 10001 个值x 介于(含)-5 和 5 之间

  2. 在 a 的 10001 个 x 值中,找到 f(x) 的两个局部最大值。

我尝试这样做:

# question1
x <- seq(-5,5,length=10001)
y <- (10*((x-1)^2)^(1/3))/(x^2 + 9)

plot(x,y) # This will produce a graph with two max point

# question2
x[which.max(y)]
y[which.max(y)]
Run Code Online (Sandbox Code Playgroud)

但是,我只获得最大点之一的坐标,并且不知道如何获得另一个最大点。

r function local max

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

为什么 ggplot 将我的图变成列表

想要绘制的数据框

该图像有 5 行和两个我想要绘制的变量,下面是我正在使用的代码。

第二张图显示了结果
平均意愿列表

#histogram plot
Pwill1 <- ggplot(AvgPWill, aes(Segment))+geom_histogram()

#Structure of AvgPWill
str(AvgPWill)
'data.frame':   5 obs. of  2 variables:
 $ Segment: chr  "Costcutter" "Innovator" "Mercedes" "Workhorse" ...
 $ Values : num  2084 3595 4695 2994 3422
Run Code Online (Sandbox Code Playgroud)

我不熟悉绘图功能,但我尝试了这个并收到此错误:

plot(AvgPWill$Segment, AvgPWill$Values) 
Run Code Online (Sandbox Code Playgroud)

plot.window(...) 中的错误:需要有限的“xlim”值

另外:警告消息:
1:在 xy.coords(x, y, xlabel, ylabel, log) 中:通过强制转换引入的 NA
2:在 min(x) 中:min 没有非缺失参数;返回 Inf
3:在 max(x) 中:max 没有非缺失参数;返回-Inf

r list histogram ggplot2

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

错误无法在数据中找到 y.position 变量 'y.position'

我正在尝试在 ggplot boxplot 中绘制重要值,但出现错误,无法理解为什么会出现此错误

我的数据

structure(list(data1 = c(0.05, 0.068, 0.063, 0.075, 0.047), 
      data2 = c(-0.029,-0.011,0.009,0.117,0.116), 
      data3 = c(-0.048,-0.030,-0.026,-0.049,-0.087), 
      data4 = c(-0.070,-0.072,-0.035,-0.001,-0.021)), 
      class = "data.frame", row.names = c(NA, -5L))
Run Code Online (Sandbox Code Playgroud)

我使用的代码

library(reshape)
library(ggplot2)
library(ggpubr)

regcovMat <- read.table("Test.txt", sep="\t", header=T)
molten.data <- melt(regcovMat)
stat.test <- compare_means(
  value ~ variable, data = molten.data,
  method = "t.test"
)

data=ggplot(molten.data, aes(x=variable, y=value, fill=variable)) + 
  geom_boxplot()+theme_cowplot()+theme(legend.position = "top")
data + stat_pvalue_manual(stat.test, label = "p")
Run Code Online (Sandbox Code Playgroud)

谁能建议我解决这个问题

r ggplot2

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