我在R中有一个列表:
my_list <- list(a = 1, b = 2, c = list(d = 4, e = 5))
Run Code Online (Sandbox Code Playgroud)
假设我不知道列表的结构,但我知道在这个列表的某个地方,有一个名为d嵌套或不嵌套的元素.我想要:
c)是否有一个简单的方法/包可以解决这个看似简单的问题?
假设我有一个小玩意儿。
library(tidyverse)
tib <- as.tibble(list(record = c(1:10),
gender = as.factor(sample(c("M", "F"), 10, replace = TRUE)),
like_product = as.factor(sample(1:5, 10, replace = TRUE)))
tib
# A tibble: 10 x 3
record gender like_product
<int> <fctr> <fctr>
1 1 F 2
2 2 M 1
3 3 M 2
4 4 F 3
5 5 F 4
6 6 M 2
7 7 F 4
8 8 M 4
9 9 F 4
10 10 M 5
Run Code Online (Sandbox Code Playgroud)
我想用 1 和 0 对我的数据进行虚拟编码,以便数据看起来更多/更少像这样。 …
我想在 y = 0 以外的位置开始绘制条形图。就我而言,我想在 y = 1 处开始绘制条形图。
举个例子,假设我geom_bar()使用 ggplot2 构建了恒等图表。
df <- data.frame(values = c(1, 2, 0),
labels = c("A", "B", "C"))
library(ggplot2)
ggplot(df, aes(x = labels, y = values, fill = labels, colour = labels)) +
geom_bar(stat="identity")
Run Code Online (Sandbox Code Playgroud)
现在,我不是问如何设置比例或轴限制。我希望代表小于 1 的值的条形图从 y = 1 开始向下流动。
它需要看起来像这样......但具有不同的 y 轴:
有什么建议吗?
假设我有一个tibble需要采取多个变量并将它们变为新的多个新变量的位置.
举个例子,这是一个简单的tibble:
tb <- tribble(
~x, ~y1, ~y2, ~y3, ~z,
1,2,4,6,2,
2,1,2,3,3,
3,6,4,2,1
)
Run Code Online (Sandbox Code Playgroud)
我想从名称以"y"开头的每个变量中减去变量z,并将结果变为tb的新变量.另外,假设我不知道我有多少"y"变量.我希望解决方案能够很好地适应tidyverse/ dplyr工作流程.
本质上,我不明白如何将多个变量变为多个新变量.我不确定你是否可以mutate在这个例子中使用?我试过了mutate_if,但我不认为我正确使用它(我收到错误):
tb %>% mutate_if(starts_with("y"), funs(.-z))
#Error: No tidyselect variables were registered
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我正在制作我的第一个 R 包,并且尝试包含包依赖项。该软件包在我的机器上安装并运行良好,但我已经安装了所有依赖项。当其他用户尝试安装但他们尚未安装所有依赖项时,他们会收到错误消息。
ERROR: dependency 'dplyr' is not available for package 'my_package'
Run Code Online (Sandbox Code Playgroud)
我正在通过 记录该包roxygen2。
我知道我应该在文件#'@import中包含行/R,并且它们会自动添加到DESCRIPTION和NAMESPACE文件中。
我的DESCRIPTION文件如下所示:
Package: my_package
Title: What the Package Does (one line, title case)
Version: 0.0.0.9000
Authors@R: person("First", "Last", email = "first.last@example.com", role = c("aut", "cre"))
Description: What the package does (one paragraph).
Depends: R (>= 3.4.1)
License: What license is it under?
Encoding: UTF-8
LazyData: true
RoxygenNote: 6.0.1
Imports: dplyr,
descr
Run Code Online (Sandbox Code Playgroud)
我的NAMESPACE看起来像这样: …
我需要将闪亮的输入对象转换为纯 HTML。
library(shiny)
test <- selectInput("testInput", label = "",
choices = c("test1", "test2", "test3"), selected = "test1")
Run Code Online (Sandbox Code Playgroud)
在这个例子中,test是一个 Shiny.tag 对象。
class(test)
#[1] "shiny.tag"
Run Code Online (Sandbox Code Playgroud)
我希望它是一个 html 对象,就好像我是从文本中解析出来的一样:
test2 <- HTML('<div class="form-group shiny-input-container">
<label class="control-label" for="testInput"></label>
<div>
<select id="testInput"><option value="test1" selected>test1</option>
<option value="test2">test2</option>
<option value="test3">test3</option></select>
<script type="application/json" data-for="testInput" data-nonempty="">{}</script>
</div>
</div>')
class(test2)
#[1] "html" "character"
Run Code Online (Sandbox Code Playgroud)
我试着像这样直接这样做:
HTML(test)
#Error in FUN(X[[i]], ...) : argument is not a character vector
Run Code Online (Sandbox Code Playgroud)
但是它需要一个字符向量,并且似乎没有将shiny.tag 对象转换为HTML 的方法。
我认为将闪亮的输入对象转换为 html 应该很容易,但不确定如何实现。
先谢谢了!