如何提取R语言中扁平列联表(ftable)的分类标签?
从R的ftable对象中提取分类标签
先看示例代码:
data = c("a", "b", "a", "a", "b", "c", "a", "b") ft = ftable(data) # 执行结果为: # data a b c # # 4 3 1
需求是从ft这个ftable对象中直接提取标签"a"、"b"、"c",尝试过colnames()、rownames()、names()这些函数都无效。虽然可以通过转换数据框或改用table对象实现,但觉得这类迂回操作太繁琐。
以下是可行但繁琐的方法:
# 转换为数据框并读取列 as.data.frame(ft)$data as_tibble(ft)$data # 使用table替代ftable rownames(as.table(ft)) rownames(table(data))
直接提取的方法
ftable对象的分类标签存储在dimnames属性里,直接访问即可:
# 方式1:通过索引获取 ft$dimnames[[1]] # 输出结果:[1] "a" "b" "c" # 方式2:通过维度名称获取(更直观) ft$dimnames[["data"]] # 输出结果:[1] "a" "b" "c"
内容的提问来源于stack exchange,提问作者normanius
相关产品推荐
相关产品推荐

