微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

水平结合两个柔性台

如何解决水平结合两个柔性台

想象一下,您获得了两个flextable对象,并且意识到需要将它们水平组合(例如,您需要一个类似于rbindbind_rows函数,但对于flextable个对象)。除了标题外,它们具有相同的结构。您知道执行此操作的功能或方式吗?

接下来,我分享一些代码以提供可重现的示例:

library(dplyr)
library(flextable)

# Simulate some data
g_A <- expand.grid(x = "A",y = c("A_1","A_2"),z = c("A_1_a","A_1_b","A_2_a","A_2_b"))
g_B <- expand.grid(x = "B",y = c("B_1","B_2"),z = c("B_1_a","B_1_b","B_2_a","B_2_b"))
g <- rbind(g_A,g_B)
n <- 123
set.seed(1)
df <- sample_n(g,n,replace = TRUE)

# Build the table
tmp <- c(table(df$x)[1],table(df$y)[1],table(df$z)[1:2],table(df$y)[2],table(df$z)[3:4],table(df$x)[2],table(df$y)[3],table(df$z)[5:6],table(df$y)[4],table(df$z)[7:8])
my_tab <- data.frame("tmp" = names(tmp),"counts" = tmp,"percentages" = round(tmp/n*100,2))

# Split the table
my_tab_A <- my_tab[1:7,]
my_tab_B <- my_tab[-(1:7),]

# flextable A
ft <- flextable(my_tab_A)
ft <- set_header_labels(ft,tmp = "")
ft <- align(ft,align = "center")
ft <- align(ft,j = 1,align = "left")
ft <- set_caption(ft,"Table A")
ft_A <- ft

# flextable B
ft <- flextable(my_tab_B)
ft <- set_header_labels(ft,"Table B")
ft_B <- ft

ft_A

ft_B

预期结果:

我正在寻找的解决方案不能基于与my_tab一起使用,因为回想起我意识到我想水平组合它们的“后验”。

等待您的见识,

谢谢

Ciao

解决方法

这可能会解决问题...

# starts with a Latin character
Item.objects.filter(title__regex='^[A-Za-z\uC0-\u024F\u1E00-\u1EFF]')

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。