在R中粘贴/折叠

在R中粘贴/折叠,r,concatenation,paste,R,Concatenation,Paste,我被粘贴弄糊涂了,认为它只是简单的连接 whales <- c("C","D","C","D","D") quails <- c("D","D","D","D","D") results <-paste(whales, quails, collapse = '') 鲸鱼对于第一个问题,请尝试以下内容(这可能比选择重复2个字符更具说明性) 您真正想要做的(以获得“期望的”结果)是: ### "Desired" result: paste(whales, quails, se

我被粘贴弄糊涂了,认为它只是简单的连接

whales <- c("C","D","C","D","D")

quails <- c("D","D","D","D","D")

results <-paste(whales, quails, collapse = '')

鲸鱼对于第一个问题,请尝试以下内容(这可能比选择重复2个字符更具说明性)

您真正想要做的(以获得“期望的”结果)是:

### "Desired" result:
paste(whales, quails, sep = '', collapse = ' ')

[1] "CD DD CD DD DD"
请注意,我们将
sep
collapse
参数指定为不同的值,这与您的第二个问题有关
sep
允许用字符串分隔每个术语,而
collapse
允许用字符串分隔整个结果

试一试

或者,使用快捷方式
paste0
,默认为
paste
sep='


对于那些喜欢视觉效果的人,以下是我在解释
粘贴
R
中是如何工作的:

sep
创建填充有
sep
参数中的值的元素三明治:

collapse
创建一个大三明治,在使用
sep
参数生成的三明治之间添加
collapse
参数值:


为什么要否决投票?这是一个合理的问题,也有很好的框架。我仍然找不到为什么粘贴(c(“a”、“S”、“D”、“F”)、c(“W”、“X”、“Y”、“Z”)、塌陷=“”)的结果是这样的答案。在我的hit n测试中,我也得到了答案,对于所需的输出,我们需要sep=“”或使用paste0()。但我仍然无法理解上面提到的代码的行为。对于一个简单的概念,很好的视觉效果,你是在R中创建的吗?怎么做?@Drnishaora,我用PowerPoint制作了插图。是的,我们可以用PowerPoint制作精彩的图像和动画。我对在R.Drnishaora做这件事很好奇,也许有办法,但我不知道我们怎么做!
results <-paste(whales, quails, collapse = NULL, sep='')
### Note that R paste's together corresponding elements together...
paste(c("A", "S", "D", "F"), 
      c("W", "X", "Y", "Z"))

[1] "A W" "S X" "D Y" "F Z"

### Note that with collapse, R converts the above 
  # result into a length 1 character vector.
paste(c("A", "S", "D", "F"), 
      c("W", "X", "Y", "Z"), collapse = '')

[1] "A WS XD YF Z"
### "Desired" result:
paste(whales, quails, sep = '', collapse = ' ')

[1] "CD DD CD DD DD"
paste(whales, quails, collapse = '', sep = '')

[1] "CDDDCDDDDD"
paste0(whales, quails, collapse = '')