flextable 包在没有 <- 的情况下分配更改

flextable package assigns changes without <-

我不确定这是否是 post 的正确论坛,但我注意到 R 中的 flextable 包有一些奇怪的行为,想知道是否有人可以摆脱任何轻.

documentation for flextable 中,它显示对象在重新分配给自己时被修改,例如:

ft <- regulartable(head(iris)) 
ft <- color(ft, color = "orange", part = "body" )

但是,我的代码正在修改实际的 table,即使没有重新分配它,只是使用管道 %>%:

myft <- regulartable(head(iris))
myft %>% align(j = 1, align = "left")
myft    # changed

我不认为管道是问题,因为它与其他软件包没有相同的效果,例如:

library(plyr)
df <- head(iris)
df %>% mutate(Sum=Sepal.Width*2)
df    # unchanged

这是 flextable 中的错误吗?或者这是设计使然?

的确,您可以在不分配对象的情况下改变格式。但这不是您可以依赖的行为。这是一个不需要的设计 ;),应该在下一个版本中更正,这样如果您希望您的代码在未来的版本中工作,分配结果会更安全。