作者TreeMan (好啊...)
看板R_Language
标题Re: [问题] dataframe运作embed及修正timedelay首栏
时间Tue Mar 26 11:38:16 2019
library(dplyr)
tao_b %>%
select(乡镇市区, 交易标的, 建物型态, 交易日期, 单价元平方公尺) %>%
arrange(乡镇市区, 交易标的, 建物型态, 交易日期, 单价元平方公尺) %>%
#先把同性质同日期资料分组, 价格以中位数表达, 并将重复样本删除
group_by(乡镇市区, 交易标的, 建物型态, 交易日期) %>%
mutate(单价元平方公尺 = median(单价元平方公尺)) %>%
filter(row_number()==1) %>%
#再次将同性质的资料分组处理, 将各组每笔记录比对上一次交易日之价格
#此时各组第一个的timedelay是NA
group_by(乡镇市区, 交易标的, 建物型态) %>%
mutate(timedelay = lag(单价元平方公尺, n = 2)) %>%
ungroup() %>%
#将所有资料的timedelay之NA转为0, 非NA则保留原值
#计算後两项相减
mutate(timedelay = ifelse(is.na(timedelay), 0, timedelay),
价格差异 = 单价元平方公尺 - timedelay
)
交流整理资料的做法...
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 122.121.136.7
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1553571498.A.20C.html
1F:推 paranoia5201: 太神啦!一次搞定,这里果然卧虎藏龙,万分感谢。 03/27 14:33