我已将.csv文件导入R.这些文件有几列(我简化为4),其中两列 - if/else
和assigned
- 应该是日期,但是,他们以“性格”的身份进入。我需要将它们作为日期阅读。
我花了几个小时搜索并尝试不同的东西,但无法找到解决方案。这就是数据的样子(前3行,我总共有5K行):
completed
我在 id assigned completed score
1: 54 11/10/16 11/10/16 0
2: 54 11/21/16 11/21/16 7
3: 54 1/26/17 1/26/17 11
> summary(data_subset)
id assigned completed
Min. : 54 Length:5991 Length:5991
1st Qu.: 1375 Class :character Class :character
Median : 1910 Mode :character Mode :character
Mean : 2145
3rd Qu.: 2199
Max. :10410
score
Min. : 0.00
1st Qu.: 4.00
Median : 7.00
Mean : 8.33
3rd Qu.:12.00
Max. :27.00
NA's :1
列上尝试lubridate
,但它将所有值覆盖为NA。
assigned
我正在寻找一种方法让library(lubridate)
data_subset$assigned <- mdy(data_subset$assigned)
id assigned completed score
1: 54 <NA> 11/10/16 0
2: 54 <NA> 11/21/16 7
3: 54 <NA> 1/26/17 11
和assigned
作为日期读取 - 无论是在.csv导入期间发生,还是在它已经在R之后通过数据操作。
答案 0 :(得分:2)
导入方法后的操作:
data_subset$assigned <- as.Date(data_subset$assigned,'%m/%d/%y') # This uses base R
data_subset$completed <- as.Date(data_subset$completed,'%m/%d/%y') # The '%/m/%d/%y' specifies the format of your date
旁注:我一直在研究类似的问题,lubridate
最近做了一些奇怪的事情。我怀疑原因可能部分归结于R. lubridate
似乎在R 3.3.3上比在r-microsoft 3.3.3上更好。我在r-mircosoft发行版中缺少包中的某些功能。也许缺少一些潜在的功能,导致一切都转到NA。这只是猜测,但也许会导致答案。