library(formattable)
library(tidyverse)
library(flextable)
########################################################################################
#1、
data<-tibble("y"=c(24046,20024,12531,12212,17717,16594,14614,12984,26253,18825,21545,15012,18593,12776,15778,13733,14496,14609,22396,14244,14457),
"x1" = c(7535,7344,4211,3856,5463,5809,4635,4687,9656,6658,7552,5815,7317,5072,5201,4607,5838,5442,8258,5553,6556),
"x2" = c(2639,1881,1542,1529,2730,2042,2045,1807,2111,1916,2110,1541,1634,1477,2197,1886,1783,1625,1521,1146,865),
"x3" = c(1971,1854,1502,1439,1584,1433.1594,1337,1790,1437,1552,1397,1754,1174,1572,1191,1371,1302,2100,1377,1521,1177))
data %>% flextable() %>% set_header_labels(y = "城镇居民家庭平均每人全年的消费性支出", x1 ="居民的食品花费", x2 = "居民的衣着花费",x3 = "居民的居住花费") %>%
autofit() %>% align(align = "center",part = "all")
########################################################################################
########################################################################################
# 2、
data1 <- tibble(y = c(0.320000,0.40625,0.448276,0.423077,0.465116,0.564103,0.571429,0.571429,0.666667),
x = c(1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5)) %>% mutate_if(is.double,formattable::digits,digits=6)
data1 %>% flextable() %>% set_header_labels(data2,y = "Aaa", x ="Bbb") %>% autofit() %>% align(align = "center",part = "all")
class(data1 %>% flextable())
########################################################################################
现在问题是:第一段代码和第二段代码的set_header_labels()函数之前的对象,类型应该都是flextable。
第一段代码能正常运行,第二段代码居然报了这样的error?!?!
我实在是不理解为什么,而第一段代码运行出来就很正常了。
请问是什么回事??