我有一个数据框
df = data.frame("A" = c("a","b","c","d"), "B" = c(1,2,3,4), "link" = c("www.a.com", "www.b.com", "www.c.com", "www.d.com"))
A B链接
a 1 www.a.com
b 2 www.b.com
c 3 www.c.com
d 4 www.d.com
我制作格式表
dt.ft <- regulartable(data = dt[, list(A, B, link)])
我想使“ A”列中的值与“链接”列中的相应值超链接。
我尝试过
compose(x = dt.ft, j = "A", value = as_paragraph( hyperlink_text(x = A, url = link)))
我得到以下错误:
$<-.data.frame
(*tmp*
中的错误,“ url”,值= c(1L,2L,3L,4L,1L,: 替换有16行,数据有4
如果表中只有1行,则上面的R语句有效,但对多行无效。你能帮我么。 另外,在链接之后,是否有任何方法可以隐藏/删除“链接”列。
答案 0 :(得分:1)
首先,有一个问题,版本0.5.2应该可以解决。
library(flextable)
df = data.frame("A" = c("a","b","c","d"), "B" = c(1,2,3,4), "link" = c("www.a.com", "www.b.com", "www.c.com", "www.d.com"))
dt.ft <- flextable(data = df, col_keys = c("A", "B"))
dt.ft <- compose(x = dt.ft, j = 1, value = as_paragraph( hyperlink_text(x = A, url = link)))
dt.ft
该示例还显示了如何通过使用参数col_keys
选择要显示的列。