我知道大型数据帧中存在重复的行,因为unique()会导致较小的数据帧.
我想得到那些重复的东西,以帮助弄清楚它们的来源.
我看到了涉及早期版本重复的各种函数的引用,但不能使它们中的任何一个适用于.6
那么如何创建包含另一个数据框中包含的重复行的数据框?
DataFrames具有nonunique返回逻辑掩码的函数,该掩码具有真值,其中行不是唯一的:
julia> df = DataFrame(X=rand(1:3, 10), Y=rand(10:13,10))
10×2 DataFrames.DataFrame
? Row ? X ? Y ?
????????????????
? 1 ? 2 ? 11 ?
? 2 ? 1 ? 10 ?
? 3 ? 2 ? 13 ?
? 4 ? 2 ? 13 ?
? 5 ? 2 ? 13 ?
? 6 ? 1 ? 10 ?
? 7 ? 2 ? 10 ?
? 8 ? 3 ? 13 ?
? 9 ? 2 ? 12 ?
? 10 ? 1 ? 11 ?
julia> nonunique(df)
10-element Array{Bool,1}:
false
false
false
true
true
true
false
false
false
false
Run Code Online (Sandbox Code Playgroud)
您可以将逻辑掩码转换为线性索引find:
julia> find(nonunique(df))
3-element Array{Int64,1}:
4
5
6
Run Code Online (Sandbox Code Playgroud)