@@ -66,7 +66,16 @@ define([
6666 child : [
6767 { id : 'null_count' , label : 'Null count' ,
6868 code : "pd.DataFrame({'Null Count': ${data}.isnull().sum(), 'Non-Null Count': ${data}.notnull().sum()})" , dtype : [ 'DataFrame' , 'Series' ] } ,
69- { id : 'duplicates' , label : 'Duplicated' , code : '${data}.duplicated()' , dtype : [ 'DataFrame' , 'Series' ] } ,
69+ // { id: 'duplicates', label: 'Duplicated', code: '${data}.duplicated()', dtype: ['DataFrame', 'Series'] },
70+ { id : 'duplicates' , label : 'Duplicated' , code : "with pd.option_context('display.max_colwidth', None):\
71+ \n _duplicated = ([${data}.duplicated().sum()] + [${data}[col].duplicated().sum() for col in df.columns])\
72+ \n _duplicated_df = pd.DataFrame({\
73+ \n 'Rows':[len(${data})]*len(_duplicated),\
74+ \n 'Unique':[len(${data}) - dups for dups in _duplicated],\
75+ \n 'Duplicated': _duplicated,\
76+ \n 'Duplicated values': [' + '.join(${data}.columns.to_list())] + ${data}.columns.to_list()\
77+ \n }, index=['Combination']+${data}.columns.to_list())\
78+ \n display(_duplicated_df)" , dtype : [ 'DataFrame' , 'Series' ] } ,
7079 { id : 'unique' , label : 'Unique' , code : '${data}.unique()' , dtype : [ 'Series' ] } ,
7180 { id : 'value_counts' , label : 'Value counts' , code : '${data}.value_counts()' , dtype : [ 'DataFrame' , 'Series' ] } ,
7281 ]
@@ -279,7 +288,7 @@ define([
279288 let { id, label, dtype } = itemObj ;
280289 let enabled = dtype . includes ( currentDtype ) ;
281290 let selected = that . state . menuItem . includes ( id ) ;
282- // FIXME: disable item depends on dtype
291+ // disable item depends on dtype
283292 $menu . find ( '.vp-dropdown-content' )
284293 . append ( $ ( `<div class="vp-dropdown-item vp-information-menu ${ enabled ?'' :'disabled' } ${ selected ?'selected' :'' } " data-menu="${ id } " data-parent="${ menuObj . id } ">${ label } </div>` ) ) ;
285294 } ) ;
0 commit comments