小编Sam*_*Sam的帖子

连接数据帧的行

我想采用带有字符和数字的数据框,并将每行的所有元素连接成一个字符串,该字符串将作为单个元素存储在向量中.作为一个例子,我创建一个字母和数字的数据框,然后我想通过粘贴函数连接第一行,并希望返回值"A1"

df <- data.frame(letters = LETTERS[1:5], numbers = 1:5)
df

##   letters numbers
## 1       A       1
## 2       B       2
## 3       C       3
## 4       D       4
## 5       E       5

paste(df[1,], sep =".")
## [1] "1" "1"
Run Code Online (Sandbox Code Playgroud)

因此,粘贴将行的每个元素转换为一个整数,该整数对应于"相应级别的索引",就像它是一个因子一样,并且它保持长度为2的向量.(我知道/相信被强制为字符的因素会以这种方式运行,但由于R根本没有存储df [1,]作为因素(由is.factor()测试,我无法验证它实际上是一个级别的索引)

is.factor(df[1,])
## [1] FALSE
is.vector(df[1,])
## [1] FALSE
Run Code Online (Sandbox Code Playgroud)

因此,如果它不是一个向量,那么它的行为很奇怪,但我无法将它强制转换为向量

> is.vector(as.vector(df[1,]))
[1] FALSE
Run Code Online (Sandbox Code Playgroud)

使用as.character似乎对我的尝试没有帮助

谁能解释这种行为?

r vector concatenation paste r-factor

31
推荐指数
2
解决办法
7万
查看次数

ggplot2轴标签中的希腊语和字母数字

我想用ggplot2制作一个轴标签为uL的图表,其中'u'是希腊'mu'.
添加mu,我发现这个工作

p <- ggplot(data.frame(x = 1:3, y = 1:3), aes(x= x, y=y)) + geom_point()
p + ylab(expression(mu))
Run Code Online (Sandbox Code Playgroud)

但我无法在其旁边放置任何其他东西.这些都行不通

p + ylab(paste(expression(mu), "foo"))
p + ylab("expression(mu)~foo")
Run Code Online (Sandbox Code Playgroud)

提前致谢

山姆

r ggplot2

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

如何强制Knitr在所有其他代码块之后评估\ Sexpr

我正在尝试为动态文档编写摘要,但我的\Sexpr{}调用不起作用.

基本上我所要做的就是用一个抽象来启动文档,该抽象具有从\Sexpr{value}文档中"下游"确定值的位置生成的p值.例如

这有效:

\begin{document}

<<foo>>=
   value = 10
@

Today I bought \Sexpr{value} Salamanders

\end{document}
Run Code Online (Sandbox Code Playgroud)

这不起作用(以及我想要实现的目标)

\begin{document}

Today I bought \Sexpr{value} Salamanders

<<foo>>=
  value = 10
@
Run Code Online (Sandbox Code Playgroud)

latex r knitr

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

标签 统计

r ×3

concatenation ×1

ggplot2 ×1

knitr ×1

latex ×1

paste ×1

r-factor ×1

vector ×1