as.date 在数据集中创建一些 NA

爱莎

我有一个简单的小数据集:

> str(SFdischg)
'data.frame':   11932 obs. of  4 variables:
 $ date: Factor w/ 11932 levels "1/01/1985","1/01/1986",..: 97 4409 8697 9677 10069 10461 10853 11245 11637 489 ...
 $ ddmm: Factor w/ 366 levels "01-Apr","01-Aug",..: 1 13 25 37 49 61 73 85 97 109 ...
 $ year: int  1984 1984 1984 1984 1984 1984 1984 1984 1984 1984 ...
 $ cfs : int  1500 1430 1500 1850 1810 1830 1850 1880 1970 1980 ...

我想要一列日期,以便我可以绘制时态数据:

SFdischg$daymo <- as.Date(SFdischg$ddmm, format="%d-%b")
> summary(SFdischg)
    date            ddmm            year           cfs           daymo           
 1/01/1985:    1   01-Apr :   33   Min.   :1984   Min.   : 172   Min.   :2018-01-01  
 1/01/1986:    1   01-Aug :   33   1st Qu.:1992   1st Qu.: 705   1st Qu.:2018-04-04  
 1/01/1987:    1   01-Jul :   33   Median :2000   Median : 948   Median :2018-07-03  
 1/01/1988:    1   01-Jun :   33   Mean   :2000   Mean   :1374   Mean   :2018-07-02  
 1/01/1989:    1   01-May :   33   3rd Qu.:2008   3rd Qu.:1340   3rd Qu.:2018-10-01  
 1/01/1990:    1   01-Nov :   33   Max.   :2016   Max.   :8100   Max.   :2018-12-31  
 (Other)  :11926   (Other):11734                                 NA's   :8           

但是,daymo现在有 8 个 NA,我不明白为什么(这使得绘制变得困难!)。当 中没有丢失数据时,少数 NA 来自哪里ddmm我怎样才能避免它们?我错过了一些明显的东西吗?

蒂姆·比格莱森

我的猜测是您在ddmm列中拥有的某些因素数据无法正确解析为日期。您可以使用以下方法揭示这些错误值:

SFdischg$ddmm[is.na(as.Date(SFdischg$ddmm, format="%d-%b"))]

请注意,由于ddmm列中没有年份组件,R 似乎自动将当前年份 2018 分配给日期。理想情况下,您应该使用包含年份的源信息来构建日期。

编辑:根据您在下面的评论,违规行已19-Feb作为日期。这意味着这些日期甚至可能不是 2018 年,2018 年不是闰年,2 月只有 28 天。这说明了在解析日期(包括年份)时使用全套信息的重要性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

as.Date返回NA

来自分类Dev

关于Date结果的一些信息(long date)

来自分类Dev

as.Date继续返回NA

来自分类Dev

R dplyr mutate不能与as.Date(NA)'origin'一起使用

来自分类Dev

创建一些数据的动态视图

来自分类Dev

parse_date_time返回NA的向量

来自分类Dev

从Date类变量中删除NA

来自分类Dev

as.Date返回NA日期格式

来自分类Dev

使用所有列NA过滤data.frame,但保留其中一些为NA

来自分类Dev

如何将值添加到列并仍然保留一些NA?

来自分类Dev

Dplyr:在面板数据集中寻找与NA的联接

来自分类Dev

Dplyr:在面板数据集中寻找与NA的联接

来自分类Dev

oracle to_date在自定义查询中返回一些错误

来自分类Dev

在数据框中输入NA

来自分类Dev

从列表创建一些数据框列名称

来自分类Dev

创建一个网站并使用xampp mysql将一些值存储在数据库中,在localhost上一切正常

来自分类Dev

使用R删除大型数据集中的一些特殊列

来自分类Dev

如何将一些数据添加到mysql结果集中?

来自分类Dev

如何将单个数据集中的行与一些重复值合并?

来自分类Dev

切换到DST:round_date()返回NA

来自分类Dev

as.Date产生月份名称“März”(3月)的NA

来自分类Dev

获取带有as.Date的缩写月份格式的NA

来自分类Dev

切换到DST:round_date()返回NA

来自分类Dev

设置C语言环境后as.Date返回NA

来自分类Dev

as.Date 在从字符转换时返回 NA

来自分类Dev

如何使用 PYSPARK 从 CSV 文件中删除带有一些垃圾字符(如 $、“NA”等)的特定记录

来自分类Dev

缺少编码为NA和“ NA”的数据

来自分类Dev

创建不带NA的序列

来自分类Dev

在数据框中选择一些项目并进行更改

Related 相关文章

热门标签

归档