用条件填充缺失的数据我有一个 dt 缺少需要从同一列填充的数据。
表格告诉我们某人穿的颜色衬衫我有一个名字,他换衬衫的日期,他下次换衬衫的日期,以及衬衫的颜色。
我的问题是他每次更新数据时都不会换衬衫。如果他不换衬衫,他会写“na”。
我需要把所有的“na”换成他上次换衬衫的颜色。我需要填充以同一个人为条件的颜色,并且它是他记录的最后一种颜色。
这是表格:
| 姓名 | 更换衬衫日期 | 下次换衬衫日期 | 衬衫颜色 |
| 周杰伦 | 2019 年 10 月 10 日 22:19 | 2019 年 10 月 15 日 18:49 | 黄色 |
| 汤姆 | 2019 年 10 月 13 日 6:09 | 2019 年 10 月 13 日 18:25 | 棕色的 |
| 汤姆 | 2019 年 10 月 13 日 18:25 | 2019 年 10 月 16 日 5:56 | 呐 |
| 周杰伦 | 2019 年 10 月 15 日 18:49 | 2019 年 10 月 18 日 16:05 | 呐 |
| 汤姆 | 2019 年 10 月 16 日 5:56 | 2019 年 10 月 20 日 2:31 | 呐 |
| 周杰伦 | 2019 年 10 月 18 日 16:05 | 2019 年 10 月 22 日 3:17 | 呐 |
| 汤姆 | 2019 年 10 月 20 日 2:31 | 2019 年 10 月 23 日 18:41 | 呐 |
| 周杰伦 | 2019 年 10 月 22 日 3:17 | 2019 年 10 月 25 日 5:44 | 呐 |
| 汤姆 | 2019 年 10 月 23 日 18:41 | 2019 年 10 月 26 日 21:14 | 呐 |
| 周杰伦 | 2019 年 10 月 25 日 5:44 | 2019 年 10 月 28 日 9:10 | 呐 |
| 汤姆 | 2019 年 10 月 26 日 21:14 | 2019 年 10 月 29 日 2:02 | 呐 |
| 周杰伦 | 2019 年 10 月 28 日 9:10 | 2019 年 10 月 31 日 0:51 | 绿色的 |
| 汤姆 | 2019 年 10 月 29 日 2:02 | 2019 年 11 月 2 日 3:13 | 灰色的 |
| 周杰伦 | 2019 年 10 月 31 日 0:51 | 2019 年 11 月 3 日 6:57 | 棕色的 |
| 汤姆 | 2019 年 11 月 2 日 3:13 | 2019 年 11 月 3 日 6:57 | 呐 |
感谢任何提供帮助的人。
回复:用条件填充缺失的数据你好@walk545 ,
看看这个解决方案。这有点低技术,但你应该能够得到你想要的结果。只需打开附件并在其上运行以下脚本。
Names Default To Here( 1 );
dt = current data table ();
dt << New Column( "Row", formula( :Row() ), eval formula );
dt:row << delete formula;
dt << Sort( replace table,
By( :name, :Change Shirt Date, :Next change shirt date ),
Order( Ascending, Ascending, Ascending ),
);
for each row ( if (:shirt color == "na", :shirt color = lag (:shirt color, 1)) );
dt << sort (replace table, By (:Row), order (Ascending));
类似的问题是这篇文章中的地址https://community.jmp.com/t5/Discussions/help-creating-a-column-that-is-a-cumulative-sum-based-on-other/mp/19991
让我们知道这是否有帮助。
罗恩