我有一个如下的数据表
| season title rating
-- + ------ --------------------- ------
0 | 10 The last one 9.7
1 | 1 The pilot 5.6
2 | 4 The one where estelle 7.8
3 | 10 The last one 9.7
4 | 3 The thumb 10
[5 rows x 3 columns]
这里第0行和第3行是重复的,我想保留第3行的a边
在本例中,我尝试将其作为-
DT_X[f.season!=10, :]
它过滤两个观测值,如下所示:
| season title rating
-- + ------ --------------------- ------
0 | 1 The pilot 5.6
1 | 4 The one where estelle 7.8
2 | 3 The thumb 10
[3 rows x 3 columns]
但是,我想有一个第一个观察,即索引为0并过滤掉第三行
如何在pydatatable中实现它?如何使用数据表行的索引检索数据表行
排除第三个索引:
在H2O的团队和@sammyweemmy讨论之后,我用下面的函数片找到了一个解决方案
“取消选择”行的最简单方法是从帧中删除它们:
如果不想修改原始帧,只需先创建一个副本(因为数据未被复制,所以速度很快):
如果需要删除几行,这尤其方便:只需传递一个索引列表作为第一个参数
使用切片的解决方案也很有效:它基于这样一个事实,即
i
选择器中可以有一个事物列表(请参见docs)。因此,为了“取消选择”第3行,我们将选择一个片:3
,然后选择另一个片4:
。不幸的是,Python只允许在方括号内使用切片表示法,因此我们必须显式地指定上面的切片:slice(None, 3)
和slice(4, None)
。将它们放在一起,结果会出现在@myamulla_ciencia发布的解决方案中:相关问题 更多 >
编程相关推荐