python中的数据表包(https://github.com/h2oai/datatable/)可以计算一列中唯一值的数量,有没有办法用这个包删除重复值或者我必须使用慢熊猫包裹?
问问题
407 次
1 回答
5
如果要在单个列中查找唯一值,则可以使用 function dt.unique()
,它接受一列并返回一个新列,其中包含原始列中的所有唯一值:
>>> import datatable as dt
>>> DT = dt.Frame(A=[1, 3, 2, 1, 4, 2, 1], B=list("ABCDEFG"))
>>> dt.unique(DT["A"])
| A
-- + --
0 | 1
1 | 2
2 | 3
3 | 4
[4 rows x 1 column]
另一方面,如果您有一个多列框架,并且您只想在其中一列中保留具有唯一值的行,那么这相当于按该列分组,并且可以这样处理:
>>> from datatable import f, by, first
>>> DT[:, first(f[1:]), by(f[0])]
| A B
-- + -- --
0 | 1 A
1 | 2 C
2 | 3 B
3 | 4 E
[4 rows x 2 columns]
于 2019-12-30T23:43:58.770 回答