问题标签 [r-faq]

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 投票
4 回答
14415 浏览

r - 查看 R 包的源代码

是否有一种简单的方法可以从交互式环境中查看 R 包(或包中的方法)的源代码?

0 投票
30 回答
141141 浏览

r - 确定执行脚本的路径

我有一个名为的脚本,其中foo.R包含另一个脚本other.R,它位于同一目录中:

但我想R找到other.R不管当前工作目录是什么。

也就是说,foo.R需要知道自己的路径。我怎样才能做到这一点?

0 投票
20 回答
1466503 浏览

r - 计算向量中具有 x 值的元素的数量

我有一个数字向量:

如何让 R 计算值x在向量中出现的次数?

0 投票
8 回答
352332 浏览

r - 连接字符串/字符的向量

如果我有一个字符类型的向量,我如何将这些值连接成字符串?以下是我将如何使用paste()

屈服"abc"

但是,当然,只有在我提前知道sdata的长度时才有效。

0 投票
8 回答
204521 浏览

r - 将 data.frame 从宽格式重塑为长格式

我很难将我data.frame的从宽表转换为长表。目前它看起来像这样:

现在我想把它data.frame变成一个 long data.frame。像这样的东西:

正如一些人在类似问题中所建议的那样,我已经查看并尝试过使用melt()和功能。reshape()但是,到目前为止,我只得到混乱的结果。

如果可能的话,我想用这个reshape()函数来做,因为它看起来更好处理一些。

0 投票
3 回答
143223 浏览

r - 如何从日期减去/添加天数?

我正在尝试构建文件夹来存储数据拉取。我想用拉取数据的日期标记文件夹。

前任。我从 mysql 中提取 5 天前的数据,我想将文件夹命名为 5 天前的日期。

MySQL 可以轻松处理日期算术。我不确定 R 到底是如何做到的。我是否应该在 POSIXct 中减去适当的秒数,然后转换为 POSIXlt 以命名文件夹 MM_DD_YYYY?

或者,还有更好的方法?

0 投票
15 回答
341817 浏览

r - 如何修剪前导和尾随空白?

我在 data.frame 中的前导和尾随空格时遇到了一些麻烦。

例如,我根据某个条件查看一个特定的rowdata.frame

我想知道为什么我没有得到预期的输出,因为奥地利显然存在于我的data.frame. 在查看了我的代码历史并试图找出问题所在后,我尝试了:

我在命令中所做的只是在奥地利之后增加了一个空格。

显然会出现更多恼人的问题。例如,当我喜欢根据国家列合并两个框架时。一个data.frame使用"Austria ",而另一个框架有"Austria"。匹配不起作用。

  1. 有没有一种很好的方法可以在我的屏幕上“显示”空白区域,以便我意识到问题所在?
  2. 我可以删除R中的前导和尾随空格吗?

到目前为止,我曾经编写过一个简单的Perl脚本来消除白人的节奏,但如果我能以某种方式在 R 中做到这一点,那就太好了。

0 投票
4 回答
1154 浏览

r - 我在哪里可以找到具有各种实现的有用的 R 教程?

我使用的是R语言,R 网站上的手册内容丰富。但是,我希望看到更多关于 R 的示例和实现,它们可以帮助我更快地发展我的知识。有什么建议么?

0 投票
3 回答
274091 浏览

r - 控制R中打印输出中的小数位数

R中有一个选项可以控制数字显示。例如:

应该以 10 位数字给出计算结果,直到 R 会话结束。在R的帮助文件中,digits参数的定义如下:

位数:控制打印数值时要打印的位数。这只是一个建议。有效值为1...22,默认值为7

所以,它说这只是一个建议。如果我喜欢总是显示 10 位数字,而不是更多或更少怎么办?

我的第二个问题是,如果我想显示超过 22 位数字,即更精确的计算,如 100 位数字,该怎么办?是否可以使用基本 R,或者我需要额外的包/功能吗?

编辑:感谢jmoy的建议,我试过sprintf("%.100f",pi)了,它给了

其中有 48 位小数。这是R可以处理的最大限制吗?

0 投票
7 回答
157422 浏览

r - 理解 order() 函数

我试图了解该order()功能是如何工作的。我的印象是它返回了索引的排列,排序时会对原始向量进行排序。

例如,

我本来希望这会返回c(2, 3, 1, 4),因为排序后的列表将是 10 45 50 96。

有人可以帮我理解这个函数的返回值吗?