flextable软件包分配更改,而没有<-

时间:2019-01-16 02:06:28

标签: r pipe flextable

我不确定这是否是发布此帖子的正确论坛,但是我注意到R中的flextable包有一些奇怪的行为,并且想知道是否有人可以阐明这一点。

flextable的{​​{3}}中,它显示了将对象重新分配给自己时正在修改的对象,例如:

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

但是,我的代码仅使用管道%>%修改了实际表,甚至没有重新分配它:

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中的错误吗?还是这是设计使然?

1 个答案:

答案 0 :(得分:1)

的确,您可以在不分配对象的情况下更改格式。但这不是您可以依靠的行为。这是不想要的设计;),应在下一版本中进行更正,这样,如果您希望代码与将来的版本一起使用,则分配结果将更加安全。