如何在 R 数据查看器中显示带有因子的数据框?

How to display a dataframe with factors in R data viewer?

我有一个 class,其中包含一个数据框,其中列是因子(来自包 phyloseq)。看起来像这样:

> str(a)
'data.frame':   124 obs. of  21 variables:
Formal class 'sample_data' [package "phyloseq"] with 4 slots
  ..@ .Data    :List of 21
  .. ..$ : Factor w/ 2 levels "L25","L53": 2 2 2 2 2 2 2 2 1 1 ...
  .. ..$ : Factor w/ 1 level "feces metagenome": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 1 level "none": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 1 level "not applicable": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 1 level "not applicable": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 1 level "feces": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 2 levels "Germany:Berlin",..: 2 2 2 2 2 2 2 2 1 1 ...
  .. ..$ : Factor w/ 1 level "Mus musculus": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 1 level "not applicable": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 1 level "none": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 1 level "none": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 1 level "none": 1 1 1 1 1 1 1 1 1 1 ...
  .. ..$ : Factor w/ 3 levels "female","male",..: 1 1 1 1 2 2 1 1 3 3 ...

  ..@ names    : chr  "Library" "Organism" "Collection_date" "Env_biome" ...
  ..@ row.names: chr  "285L53" "286L53" "287L53" "288L53" ...
  ..@ .S3Class : chr "data.frame"

我可以在控制台中毫无问题地查看数据,但想在数据查看器中检查它。但是,如果我尝试这样做,我只会得到一个 table,它显示列名、列类型,即 "factor",以及所述因子的水平,像这样

Name       Type                               Value
a          List[124x21(phyloseq::sample_data) A data.frame with 124 rows and 21 columns
 Library   factor                             Factor with 2 levels "L25", "L53"
 Organism  factor                             Factor with 1 level: "feces Metagenome"
 etc.

我对 R 比较陌生,尝试过以下方法:

View(a@.Data)
View(a)
View(a@.Data[])

我怀疑我对 S4 classes 及其语法缺乏一些了解,你能给我一个提示,告诉我如何在数据查看器中显示实际数据吗?

首先尝试将对象更改为dataframe,然后应用View功能

View(as.data.frame(a@.Data))