当要了解放置在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 ...
答案 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