替换R列中的字符串

替换R列中的字符串,r,string,replace,rename,R,String,Replace,Rename,我有一个数据框架,其中包括因子列“年” “年”中的观察结果如下所示: y1995 y1995 y1997 y1997 y1999 y2007 y1995 等 我想最终把“年”转换成类整数。但是,首先,我需要从每个观测值中删除“y”,以便数据采用以下形式: 1995 1995 1997 1997 1999 2007 1995 等 年份都在1995年至2007年之间 如何执行此操作?您可以尝试sub删除第一个非数字元素 df1$Year <- as.nume

我有一个数据框架,其中包括因子列“年”

“年”中的观察结果如下所示:

 y1995 
 y1995
 y1997
 y1997
 y1999
 y2007
 y1995

我想最终把“年”转换成类整数。但是,首先,我需要从每个观测值中删除“y”,以便数据采用以下形式:

 1995 
 1995
 1997
 1997
 1999
 2007
 1995

年份都在1995年至2007年之间


如何执行此操作?

您可以尝试
sub
删除第一个非数字元素

df1$Year <- as.numeric(sub('y', '', df1$Year, fixed=TRUE))

df1$Year您可以尝试
sub
删除第一个非数字元素

df1$Year <- as.numeric(sub('y', '', df1$Year, fixed=TRUE))

df1$Year这有一个简单的解决方案:

temp <- sub("y", "", df$Year)

temp这有一个简单的解决方案:

temp <- sub("y", "", df$Year)

temp您可以尝试在package
stringr
中使用函数
stru replace


Year您可以尝试在package
stringr
中使用函数
stru replace


Year@davidernburg基于所示示例,
y
前缀
@davidernburg基于所示示例,
y
前缀
如果要关闭这一个副本,我正在努力,如果要关闭这一个副本,我正在努力
df$Year <- sub("y", "", df$Year)
df$Year <- as.numeric(df$Year)