2016-06-10 32 views
0

我操纵stargazer包生成的回归表,该表创建表并将其存储为长度大于1(自然)的字符对象。将子字符串插入字符对象中R

我想通过插入一些关于模型的信息(例如将一些变量分组以获得更多信息给读者)来操纵该字符对象。最终,它是将多个“行”字符/字符串插入现有字符对象的过程。

这是一个最小的工作示例。

thislittle <- c("this", "little", "to", "the", "market") 
piggywent <- c("piggy", "went") 

我想插入piggywentthislittle得到这个complete对象。为了我的具体目的(超出这个最小工作示例),我需要指定插入这个其他字符对象的确切元素(这里:第二个)。

这里是我承认这可能是一个简单的任务,但我完全不习惯于操纵R中的字符串和字符对象。我也不熟悉术语,这使得搜索毫无结果。我已经想出了如何覆盖一些行,但这是关于它。

任何意见将不胜感激。

+0

'C(thislittle [1:2],piggywent,thislittle [3:5]) [1] “这”, “小”, “小猪”, “去” “到” “该” “市场” '? – Psidom

+0

'c(thislittle [a < - 1:2],piggywent,thislittle [-a])'稍微短一点,避免必须知道全长:) – Therkel

+0

两者都可以工作,但@ Therkel的方法是很好的概括。这对我想做的工作很好。 – steve

回答

1

通过定义你的thislittle第一位的指标,您可以在追加矢量的其余部分用减号来删除这些索引。如果它更复杂的话,这可以自然地在单独的一行中完成。

c(thislittle[a <- 1:2], piggywent, thislittle[-a]) 
# [1] "this" "little" "piggy" "went" "to"  "the" "market" 
0
mySplit=which(thislittle=="little") 
myl=length(thislittle) 

littleHead= thislittle[1:mySplit] 
littleTail= thislittle[(mySplit+1):myl] 
complete=append(littleHead, append(piggywent, littleTail)) 

Hope it helps 
+0

'littleTail'可以简化为'littleTail = thislittle [ - (1:mySplit)]'。那么你不需要'myl'。 – Therkel

+0

好点!谢谢你的提示。 –