我想创建一个以某种方式打印tibble
个对象的类,本质上是在调用时打印存储在包中的所有一些数据集.我不知道如何让它发挥作用.
这是我目前的状态,try 了下面的变体,但没有成功.
理想情况下,这将像普通tbl_df
一样打印zz
,但具有指定的行数(在本例中为n = 3
)
library(tibble)
long_tibble <- setClass(
Class = "long_tibble",
slots = c(tab = "tbl_df"),
contains = "tbl_df"
)
print.long_tibble <- function(x){
x@tab |>
tibble::as_tibble() |>
print(n = 3)
}
zz <- tibble::tibble(a = 1:10)
class(zz) <- "long_tibble"
zz
#> Error in x@tab: no applicable method for `@` applied to an object of class "long_tibble"
xx <- long_tibble(tab = zz)
#> Error in as(slotVal, slotClass, strict = FALSE): no method or default for coercing "long_tibble" to "tbl_df"
zz
#> Error in x@tab: no applicable method for `@` applied to an object of class "long_tibble"
创建于2024年4月12日,共有reprex v2.0.2个
idea /祈祷?🙏🏼