R 修改数据帧中变量的值
我想修改一个变量的值。这些值适用于一系列年份。从1960年开始,到2017年结束。到2017年,有多个60年代、1961年代等。每年的多个值对应于不同的国家。国家是另一列中的另一个变量。然而,每年都有一个X。例如,每个1960年都有X1960,以此类推直到X2017年。我想删除所有年份的X 数据库如下图所示R 修改数据帧中变量的值,r,dataframe,R,Dataframe,我想修改一个变量的值。这些值适用于一系列年份。从1960年开始,到2017年结束。到2017年,有多个60年代、1961年代等。每年的多个值对应于不同的国家。国家是另一列中的另一个变量。然而,每年都有一个X。例如,每个1960年都有X1960,以此类推直到X2017年。我想删除所有年份的X 数据库如下图所示 Country Year GDP Afghanistan X1960 England X1960 Sudan
Country Year GDP
Afghanistan X1960
England X1960
Sudan X1960
.
.
.
Afghanistan X2017
England X2017
Sudan X2017
.
.
您好,您可以将gsub函数添加到数据帧中
ABC <- data.frame(country = c("Afghanistan", "England"), year = c("X1960","X1960"))
print(ABC)
country year
1 Afghanistan X1960
2 England X1960
ABC$year <- gsub("X","",ABC$year)
> print(ABC)
country year
1 Afghanistan 1960
2 England 1960
ABC这里有一个tidyverse
解决方案
#加载库
图书馆(dplyr)
图书馆(readr)
#虚拟数据帧
df国家年
#>1阿富汗X1960
#>2英格兰X1960
#>3苏丹X1960
#从字符串中删除所有非数字
df%>%突变(年=解析数量(年))
#>国家年
#>1阿富汗1960年
#>2英国1960年
#>3苏丹1960年
由(v0.2.1)创建于2019-05-23,假设您的数据帧名为df
,您可以这样做:df$Year非常感谢Lyngbakr…这对我来说很有用。。。