R:不带分隔符的单独字符串(如Excel中的固定宽度)

R:不带分隔符的单独字符串(如Excel中的固定宽度),r,split,R,Split,数据集看起来很像这样 我四处搜索,但只找到了需要分隔符的函数。我成功地用两列将文件导入到R 然后我想把日期列分为“年”、“月”和“日期”,所以我想总共有4列。这就是我买股票的地方。该列没有通常与日期格式一起出现的“/”或“-” 感谢您的帮助。如@alistaire所示,您可以将您拥有的转换为R可识别的日期格式(将下面的单个字符串替换为列向量df$date以处理整个数据帧): 它由\t分隔。您可以通过复制excel文件的一部分并将其作为字符串在R中运行来判断。嗨,我刚刚意识到我还不清楚。我想将日

数据集看起来很像这样

我四处搜索,但只找到了需要分隔符的函数。我成功地用两列将文件导入到R

然后我想把日期列分为“年”、“月”和“日期”,所以我想总共有4列。这就是我买股票的地方。该列没有通常与日期格式一起出现的“/”或“-”


感谢您的帮助。

如@alistaire所示,您可以将您拥有的转换为R可识别的日期格式(将下面的单个字符串替换为列向量
df$date
以处理整个数据帧):


它由
\t
分隔。您可以通过复制excel文件的一部分并将其作为字符串在R中运行来判断。嗨,我刚刚意识到我还不清楚。我想将日期列分隔为“年”、“月”和“日期”。日期以YYYYMMDD格式存储。但它没有常用的“/”或“-”分隔符。您可以尝试
read.fwf
(即使用固定宽度而不是分隔符)。例如,您将使用
c(4,2,2,10)
(最后一个需要足够大以覆盖价格的所有数字)
作为.Date('19981201','%Y%m%d')
谢谢您,罗斯科娃!它几乎成功了。出于某种原因,原始代码给出了“v1$date_v2中意外的字符串常量”啊,是的,一个拼写错误,我的错<代码>=在那里是绝对必要的。
date <- as.Date( '19981201', '%Y%m%d' )
date
[1] "1998-12-01"
year <- format( date, "%Y")
year
[1] "1998"

month <- format( date, "%m" )
month
[1] "12"

day <- format( date, "%d" )
day
[1] "01"
v1$date_v2 <- as.Date( as.character( v1$DATE ), format = "%Y%m%d" )