gsub返回数字矩阵而不是替换字符串

时间:2016-09-14 09:48:30

标签: regex r gsub

我正在尝试第一次使用R,并希望做一些看似相当简单但没有太大成功的事情。

我有以下数据框enter image description here

我试图仅使用以下内容保留Review.LastUpdate.Date.Time列中的日期:

gsub("T[0-9]{2}\:[0-9]{2}\:[0-9]{2}Z", "", DataFrameName)

我很确定它应该可以工作,但数据框保持不变,控制台充满了看起来像一个满是数字的矩阵......(抱歉,我无法更准确地描述它,我不知道是什么这是)。它看起来像这样:

[1] "c(1,1,1,1,1, \n, 1,1,1,1,1,\n)"

2 个答案:

答案 0 :(得分:1)

如果我们需要从数据集的第二列('df1')中提取'Date'部分

as.Date(df1[[2]])

注意:最好不要在DateTime对象上使用正则表达式

答案 1 :(得分:1)

定位第8列:

gsub("T[0-9]{2}:[0-9]{2}:[0-9]{2}Z","",DataFrameName[[8]])

gsub函数只返回提取的值。需要将它们分配给“DataFrameName”列:

DataFrameName$Review.Last.Update.Date.and.Time <- gsub("T[0-9]{2}:[0-9]{2}:[0-9]{2}Z","",DataFrameName[[8]])