为什么str()会在数据清理后更改输出

时间:2020-04-18 11:30:24

标签: r data-structures

当要了解放置在df中的数据时,我会使用str和dim。 在这里,str产生了输出的两个“部分”,就像下面您可以看到的一样。

在完成一些清理并再次运行str()之后,它突然停止返回第二个“节”。 我正在学习在R中工作,这让我感到困惑。

请,如果您有某种解释,我将不胜感激。

万事如意,安德斯

> str(spain)
Classes ‘spec_tbl_df’, ‘tbl_df’, ‘tbl’ and 'data.frame':    76 obs. of  8 variables:
 $ SNo            : num  552 619 688 758 828 ...
 $ ObservationDate: chr  "02/01/2020" "02/02/2020" "02/03/2020" "02/04/2020" ...
 $ Province/State : chr  NA NA NA NA ...
 $ Country/Region : chr  "Spain" "Spain" "Spain" "Spain" ...
 $ Last Update    : chr  "2/1/2020 2:13" "2020-02-01T23:43:02" "2020-02-01T23:43:02" "2020-02-01T23:43:02" ...
 $ Confirmed      : num  1 1 1 1 1 1 1 1 2 2 ...
 $ Deaths         : num  0 0 0 0 0 0 0 0 0 0 ...
 $ Recovered      : num  0 0 0 0 0 0 0 0 0 0 ...
 - attr(*, "spec")=
  .. cols(
  ..   SNo = col_double(),
  ..   ObservationDate = col_character(),
  ..   `Province/State` = col_character(),
  ..   `Country/Region` = col_character(),
  ..   `Last Update` = col_character(),
  ..   Confirmed = col_double(),
  ..   Deaths = col_double(),
  ..   Recovered = col_double()
  .. )
> dim(spain)
[1] 76  8
> spain <-  spain[,-3] #Fjerner kolonne 3
> str(spain)
Classes ‘tbl_df’, ‘tbl’ and 'data.frame':   76 obs. of  7 variables:
 $ SNo            : num  552 619 688 758 828 ...
 $ ObservationDate: chr  "02/01/2020" "02/02/2020" "02/03/2020" "02/04/2020" ...
 $ Country/Region : chr  "Spain" "Spain" "Spain" "Spain" ...
 $ Last Update    : chr  "2/1/2020 2:13" "2020-02-01T23:43:02" "2020-02-01T23:43:02" "2020-02-01T23:43:02" ...
 $ Confirmed      : num  1 1 1 1 1 1 1 1 2 2 ...
 $ Deaths         : num  0 0 0 0 0 0 0 0 0 0 ...
 $ Recovered      : num  0 0 0 0 0 0 0 0 0 0 ...

1 个答案:

答案 0 :(得分:1)

我不确定您如何读取数据,但这是在使用子类spec_tbl_df子集数据框架之后的预期结果。

一个简短的答案是,当您的数据首次导入R时,它具有一个子类‘spec_tbl_df’。该子类具有一个spec属性,该属性保存列的数据类型信息。调用str()时,它将显示类类型(‘tbl_df’, ‘tbl’ and 'data.frame' ...)和所有属性(attr(*, "spec"))。根据设计,在为spec_tbl_df子集之后,此属性将被删除。实际上,这不会影响您的数据框。我认为这是加载数据的产物。

您可以在这里阅读更多有关它的内容: https://cran.r-project.org/web/packages/readr/news/news.html