創建或驗證 tibble 的子類。這些函數對於實現 tibble 子類的包作者非常有用,例如順豐或者蒂布爾.
new_tibble()
創建一個新對象作為 tbl_df
、 tbl
和 data.frame
的子類。該函數針對性能進行了優化,檢查次數減少到最少。有關詳細信息,請參閱vctrs::new_data_frame()
。
validate_tibble()
檢查 tibble 的內部一致性。僅當該函數運行時不會引發錯誤,才能保證正確的行為。
參數
- x
-
一個tibble-like對象。
- ...
-
Name-value 附加屬性對。
- nrow
-
行數,如果省略,則從
x
推斷。 - class
-
分配給新對象的子類,默認值:無。
- subclass
-
已棄用,為了兼容性而保留。請使用
class
參數。
建造
對於 new_tibble()
, x
必須是列表。從 tibble 3.1.4 開始,nrow
參數可以被省略。如果存在,列表 x
中的每個元素的 vctrs::vec_size()
都應該等於該值。 (但這不是由構造函數檢查的)。它取代了數據幀中的 "row.names" 屬性。 x
必須有名稱(或為空),但不會檢查名稱的正確性。
驗證
validate_tibble()
檢查 "minimal" 名稱以及所有列是否為向量、數據幀或矩陣。它還確保所有列具有相同的長度,並且 vctrs::vec_size()
與數據一致。
也可以看看
tibble()
和 as_tibble()
用於通過標量回收和自動名稱修複來構造 tibble 的方法,以及 vctrs::df_list()
和 vctrs::new_data_frame()
用於 lower-level 實現。
例子
# The nrow argument can be omitted:
new_tibble(list(a = 1:3, b = 4:6))
#> # A tibble: 3 × 2
#> a b
#> <int> <int>
#> 1 1 4
#> 2 2 5
#> 3 3 6
# Existing row.names attributes are ignored:
try(validate_tibble(new_tibble(trees, nrow = 3)))
#> Error in validate_nrow(names(x), col_lengths(x), vec_size(x)) :
#> Tibble columns must have compatible sizes.
#> • Size 3: Requested with `nrow` argument.
#> • Size 31: Columns `Girth`, `Height`, and `Volume`.
#> ℹ Only values of size one are recycled.
# The length of all columns must be compatible with the nrow argument:
try(validate_tibble(new_tibble(list(a = 1:3, b = 4:6), nrow = 2)))
#> Error in validate_nrow(names(x), col_lengths(x), vec_size(x)) :
#> Tibble columns must have compatible sizes.
#> • Size 2: Requested with `nrow` argument.
#> • Size 3: Columns `a` and `b`.
#> ℹ Only values of size one are recycled.
相關用法
- R tibble num 設置數值向量的格式
- R tibble tibble 構建 DataFrame 架
- R tibble char 設置字符向量格式
- R tibble frame_matrix 逐行矩陣創建
- R tibble rownames 用於處理行名稱的工具
- R tibble enframe 將向量轉換為數據幀,反之亦然
- R tibble add_row 將行添加到 DataFrame
- R tibble as_tibble 將列表、矩陣等強製轉換為 DataFrame
- R tibble subsetting 子集化標題
- R tibble tibble_options 封裝選項
- R tibble add_column 將列添加到 DataFrame
- R tibble lst 建立一個清單
- R tibble formatting 打印小標題
- R tibble tribble 逐行小標題創建
- R tidyr separate_rows 將折疊的列分成多行
- R tidyr extract 使用正則表達式組將字符列提取為多列
- R tidyr chop 砍伐和砍伐
- R tidyr pivot_longer_spec 使用規範將數據從寬轉為長
- R tidyr unnest_longer 將列表列取消嵌套到行中
- R tidyr uncount “計數” DataFrame
- R tidyr cms_patient_experience 來自醫療保險和醫療補助服務中心的數據
- R tidyr pivot_wider_spec 使用規範將數據從長軸轉向寬軸
- R tidyverse tidyverse_update 更新 tidyverse 軟件包
- R tidyr replace_na 將 NA 替換為指定值
- R tidyr unnest_wider 將列表列取消嵌套到列中
注:本文由純淨天空篩選整理自Kirill Müller等大神的英文原創作品 Tibble constructor and validator。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。