【发布时间】:2021-07-25 01:56:07
【问题描述】:
我从this website(英国国家统计局)下载了一个 .ods 文件。由于工作表的结构方式,我将其作为两个单独的数据框导入:
library(readODS)
income_pretax <- read_ods('/Users/c.robin/Downloads/NS_Table_3_1a_1819.ods', range = "A4:U103")
income_posttax <- read_ods('/Users/c.robin/Downloads/NS_Table_3_1a_1819.ods', range = "A104:U203")
我想对两个数据框进行一些清理:更改两个变量的名称并将其中一个变量重铸为数字。这就是我所拥有的,它适用于单个 df:
income_pretax <- income_pretax %>%
rename(pp_tot_income_pretax = 'Percentile point\nTotal income before tax',
'2008-09' = '2008-09(a)')
income_pretax['2008-09'] <- as.numeric(income_pretax$'2008-09')
不过,我正在努力将上述内容转化为函数。我认为它应该是 something 如下所示,但老实说,我不知道如何告诉 R 我正在将多个数据帧传递给函数,也不知道如何处理多个变量。 谁能就此提出建议?
##Attempting a function
cleanvars <- function(data, varlist){
data <- data %>%
rename(pp_tot_income_pretax = {{varlist}})
data['2008-09'] <- as.numeric(data$'2008-09')
}
【问题讨论】: