R 按字符处理数据帧中的值

R 按字符处理数据帧中的值,r,R,我有一个数据框,其中有一列按NBA赛季格式化的文本: Year 2014-15 2013-14 2012-13 ... 1999-00 我需要在第二年之前重新格式化。这是一个小数据集,我不介意手动修复1999-00值,但我不知道如何: paste(data$Year[1:2],data$Year[6:7]) 要获得: Year 2015 2014 2013 ... 2000 我认为最简单的方法是提取第一年并添加一年: as.numeric(substr(data$Year, 1, 4))

我有一个数据框,其中有一列按NBA赛季格式化的文本:

Year
2014-15
2013-14
2012-13
...
1999-00
我需要在第二年之前重新格式化。这是一个小数据集,我不介意手动修复1999-00值,但我不知道如何:

paste(data$Year[1:2],data$Year[6:7])
要获得:

Year
2015
2014
2013
...
2000

我认为最简单的方法是提取第一年并添加一年:

as.numeric(substr(data$Year, 1, 4)) + 1
# [1] 2003 2002 2001 2000 1999
数据:


(数据工作得很好。非常感谢。为什么substr函数对每一行都有效,但粘贴函数不允许我使用?@StatDance您不能使用类似
data$Year[1:2]
的内容对字符串的各个字符进行索引。相反,您的代码需要类似于
paste0(substr(data$Year,1,2),substr(数据$Year,6,7))
,但这仍然受到“1900”问题的困扰。
(data <- data.frame(Year=c("2002-03", "2001-02", "2000-01", "1999-00", "1998-99")))
#      Year
# 1 2002-03
# 2 2001-02
# 3 2000-01
# 4 1999-00
# 5 1998-99