【发布时间】:2018-02-03 04:57:47
【问题描述】:
我正在处理一个包含列名、公司名称、部门名称 all_production_2017、bad_production_2017 的数据框......多年前
现在我正在编写一个函数,它以公司 name 和 year 作为参数,并总结公司在该年的生产。然后按 all_production_year
的降序排序我已经将年份转换为字符串并过滤了所需的行和列。但是如何按特定列对其进行排序?我不知道如何访问该列名,因为参数 year 是它的后缀。
这是我的数据框结构的粗略草图。
结构(列表(公司 = c(“DLT”,“DLT”,“DLT”,“MSF”,“MSF”,“MSF”), 部门= c(“营销”,“CHANG1”,“CAHNG2”,“营销”,“CHANG1M”,“CHANG2M”), all_production_2000 = c(15, 25, 25, 10, 25, 18), good_production_2000 = c(10, 24, 10, 8, 10, 10), bad_production_2000 = c(2, 1, 2, 1, 3, 5)))
包含 2000 年至 2017 年的数据 我想写一个给出公司名称和年份的函数。 它可以过滤掉相关的公司和年份,并按降序对 all_production_thatyear 进行排序。
到目前为止我已经完成了。
ExportCompanyYear <- function(company.name, year){
year.string <- toString(year)
x <- filter(company.data, company == company.name) %>%
select(company, division, contains(year.string))
}
我只是不知道如何按降序排序,因为我不知道如何访问包含参数 year 的列名。
【问题讨论】:
-
请分享一下你的data.frame的结构以及你目前写的功能代码。要分享您的 data.frame 结构,请将
dput(head(df,10))的输出粘贴到问题描述中。
标签: r