【发布时间】:2018-06-20 20:44:00
【问题描述】:
提前感谢您回答这个问题,因为这是我第一次在这里提问,所以我将接受改进我的问题的提示!
我正在将数据从我们的 SQL Server 提取到一个 r-Notebook 到一个数据框中,该数据框附加到接收季度评估的客户身上,这种情况从那时起就一直在发生2015 年第四季度到 2018 年第二季度。问题是,评估并不总是进行,因此数据存在差距。例如,我目前正在创建一个如下所示的数据框:
client name | assessment date | assessment value
client 1 | 2015 Q4 | Green
client 1 | 2018 Q1 | Green
client 2 | 2015 Q4 | Yellow
client 2 | 2016 Q2 | Green
client 2 | 2016 Q4 | Green
client 2 | 2017 Q1 | Yellow
基本上,我需要每个客户名称记录 2015 年第四季度至 2018 年第二季度之间的每个季度。我将假设尚未进行评估,那么评估值从以前的评估将是默认的。数据框最终应该是这样的:
client name | assessment date | assessment value
client 1 | 2015 Q4 | Green
client 1 | 2016 Q1 | Green
client 1 | 2016 Q2 | Green
client 1 | 2016 Q3 | Green
client 1 | 2016 Q4 | Green
client 1 | 2017 Q1 | Green
client 1 | 2017 Q2 | Green
client 1 | 2017 Q3 | Green
client 1 | 2017 Q4 | Green
client 1 | 2018 Q1 | Green
client 1 | 2018 Q2 | Green
client 2 | 2015 Q4 | Yellow
client 2 | 2016 Q1 | Yellow
client 2 | 2016 Q2 | Green
client 2 | 2016 Q3 | Green
client 2 | 2016 Q4 | Green
client 2 | 2017 Q1 | Yellow
client 2 | 2017 Q2 | Yellow
client 2 | 2017 Q3 | Yellow
client 2 | 2017 Q4 | Yellow
client 2 | 2018 Q1 | Yellow
client 2 | 2018 Q2 | Yellow
谢谢!
【问题讨论】:
-
使用
tidyr::expand为所有可能的组合创建行,然后使用此站点上的众多“最后一次观察结转”(LOCF) 解决方案之一来更新缺失值。 -
我还建议您考虑仅对缺失值使用
NA,并且仅在您需要对需要这种解决方案的数据执行某些操作时才使用 LOCF 解决方案。
标签: r sql-server-2008 rnotebook