问题标签 [r-glue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
122 浏览

r - 使用字符对象来指示 R 的胶水函数中的列名?

我正在尝试使用该glue::glue函数在我的数据集中创建一个“标签”列。我希望此标签列的每一行都包含用户选择的列的值。例如,使用mtcars数据集,我想创建一个标签列,将车辆名称和我选择的另一列的值粘合起来。对单个显式定义的列这样做很好;我只是将列的名称直接放在胶水函数中(请参见下面的 mpg 示例)。

reprex 包于 2021-02-28 创建(v1.0.0)

问题是我想概括一下。我想定义在粘合函数本身之外粘合哪一列。最终,我想将此感兴趣的列设置为函数中的参数。

为了说明我的障碍,我在胶水函数之外创建了一个字符对象,它等于我要使用的列。例如,我将 column_of_interest 定义为“mpg”。我想要的行为是让胶水认识到,当我说等于“mpg”的 column_of_interest 时,我的意思是查看 mpg 列,而不是粘贴“mpg”这个词本身。也许不出所料,胶水是后者:

reprex 包于 2021-02-28 创建(v1.0.0)

我想知道是否可以做前者?是否可以通过 column_of_interest="mpg" 让胶水识别出来,我的意思是我想要 mpg 列的值,而不是字面意思“mpg”?

我对 tidy evaluation 有点熟悉(非常模糊),并且在那里尝试了一些技巧(主要是放在!!column_of_interest 前面)。没有一个是成功的。任何帮助将不胜感激,如果有帮助,我们很乐意提供更多信息。

0 投票
3 回答
139 浏览

r - 在向量上使用 R 的胶水进行字符串插值,无需多次调用它

我希望glue::glue()在向量上使用 R 进行字符串插值,而不是多次调用它。

例子:

会根据需要给予:

行数:10,列数:1

但我调用dim(df)了两次,它是一个长度为 2 的向量。

我想知道是否glue可以使用 % 运算符处理类似于 Python 中的字符串插值:

无需调用df.shape两次即可提供相同的所需输出。

0 投票
1 回答
28 浏览

r - 如何解释项目“反斜杠确实需要加倍”的包装胶水示例

如何解释下面的代码,R如何处理和评估它并得到结果“foo”,这对我来说很难理解

0 投票
1 回答
63 浏览

r - `stringr::str_glue`:如何转义反斜杠(\)?

粘的时候想str_glue留着\,但是不知道怎么逃。

reprex所做的合乎逻辑的尝试是这样的:(逃避逃跑等)

由 reprex 包于 2021-04-28 创建 (v2.0.0)

我想要的输出:

0 投票
1 回答
30 浏览

r - 根据字符向量分配一组向量(自动化代码)

我想做一系列的作业

eas_dictionary是一个包含数据字典的小标题,但这没关系。)

关键是我想在向量上使用上述代码自动化,years <- c("2014", "2015", "2017")所以我没有重复的代码。

我尝试像

但是这些都抛出错误。我只是没有掌握阳光税的窍门

0 投票
1 回答
103 浏览

r - 如何在 dplyr::across 的 .names 参数中使用字符串操作函数

虽然我试图搜索它是否重复,但我找不到类似的问题。(虽然有一个类似的,但这与我的要求有些不同)

我的问题是,我们是否可以使用字符串操作函数substrstringr::str_remove内部.names参数dplyr::across。作为一个可重复的例子,考虑这个

现在我的问题是我想重命名输出列str_remove(.col, 'Sepal'),这样我的输出列名就是Length.meanand Width.mean。为什么我要问,因为,这个论点的描述表明

.names
描述如何命名输出列的粘合规范。这可以使用 {.col} 代表选定的列名,使用 {.fn} 代表正在应用的函数的名称。对于单函数情况,默认值 (NULL) 等效于“{.col}”,对于 .fns 使用列表的情况,默认值 (NULL) 等效于“{.col}_{.fn}”。

我尝试了很多可能性,包括以下,但这些都不起作用

我知道这可以通过添加另一个步骤来解决,rename_with所以我不关心那个答案。

0 投票
2 回答
76 浏览

r - 在不同的环境中调用时,部分粘合函数不起作用

我已经在我正在处理的项目中对功能进行了局部化,这样我们就可以使用商定的分隔符,而不必一直告诉胶水它们。但是当我们在另一个函数中使用偏函数时,它停止工作:glue

reprex 包于 2021-07-09 创建 (v2.0.0 )

我的感觉是在它定义glue_query的环境中寻找要插入的对象,而不是在它被调用的环境中。这就是这里发生的事情吗?我可以指示它使用调用环境吗?我想在我的整个包裹中使用它!

编辑:我知道glue有一个.envir参数可以控制表达式在哪个环境中进行评估,但我不太确定使用什么来确保它在这里玩得很好!

0 投票
3 回答
159 浏览

r - 在用户定义的函数中使用胶水进行变异

我想使用该glue函数更改特定列中的值以包含来自另一列的信息。

我通常这样做:

输出:

当我尝试使用数据框和列名作为用户定义函数中的输入来做同样的事情时,我的问题就出现了。

我最初的要求是使用双花括号和胶水函数来传递输入,但这会导致错误。

reprex 包于 2021-08-02 创建 (v2.0.0 )

显然三重花括号不是这里的解决方案,有人可以帮我吗?

谢谢你。

0 投票
2 回答
174 浏览

r - 使用glue_sql() 并避免粘贴在动态SELECT 语句中的方法?

我正在学习如何从 R 中查询 SQLite dbs,并使用glue_sql(). 下面是我的工作流程中子查询的简化示例。有没有一种方法可以创建s10_wtX而不s20_wtX使用paste0(),如下面的代码所示?

在我的实际工作流程中,我有两种以上的兴趣,所以我宁愿不完整地写出每一行(例如,SUM(CASE WHEN ps.spp = 10 THEN (ps.wtX) END) AS s10_wtX)。

0 投票
1 回答
42 浏览

r - 如何将不同功能的输出组合成一份精美的报告?

我喜欢:
。多个绘图,每个绘图都由不同的函数创建。

. 一些“文本”输出,由 glue::glue() 和 paste() 函数创建。

如果我想创建一个调用所有输出(图 1、图 2 和置信区间)的函数并将它们全部组合成一个格式良好的报告
(即来自所有函数的一系列绘图和胶水()命令)怎么办?按顺序调用)?
要求是调用带有“功能”的报告。关于我应该查看哪些功能的任何建议?