@@ -104,6 +104,7 @@ define([
104104\n _dfr = pd.concat([_dfr, pd.DataFrame({(col,'category'): _value_counts.index})], axis=1)\
105105\n _dfr = pd.concat([_dfr, pd.DataFrame({(col,'count'): _value_counts.values})], axis=1)\
106106\n_dfr.replace(np.nan,'')" ,
107+ code2 : "${data}.value_counts()" ,
107108 dtype : [ 'DataFrame' , 'Series' ] , toframe : true } ,
108109 ]
109110 } ,
@@ -429,6 +430,7 @@ define([
429430 this . state . selected = [ ] ;
430431 this . state . selection = { start : - 1 , end : - 1 } ;
431432 this . renderMenu ( ) ;
433+ $ ( this . wrapSelector ( '.' + VP_FE_TABLE ) ) . html ( '' ) ;
432434 this . loadCode ( data ) ;
433435 this . loadInfo ( data , this . state . menu ) ;
434436 }
@@ -534,6 +536,10 @@ define([
534536 }
535537
536538 generateCode ( ) {
539+ return this . tempCode ;
540+ }
541+
542+ generateCodeForInfo ( ) {
537543 let { data, dtype, menu, menuItem } = this . state ;
538544
539545 var selected = [ ] ;
@@ -600,18 +606,26 @@ define([
600606 // only one method selected
601607 if ( menuItem . length > 0 && infoObj . child ) {
602608 let childObj = infoObj . child . find ( obj => obj . id === menuItem [ 0 ] ) ;
603- if ( childObj . toframe === true ) {
604- if ( dtype === 'Series' ) {
605- dataVar = new com_String ( ) ;
606- dataVar . appendFormat ( "{0}.to_frame()" , data ) ;
607- currentDtype = 'DataFrame' ;
608- } else if ( currentDtype === 'Series' ) {
609- dataVar = new com_String ( ) ;
610- dataVar . appendFormat ( "{0}[[{1}]]" , data , selected . map ( col => col . code ) . join ( ',' ) ) ;
611- currentDtype = 'DataFrame' ;
609+ if ( menuItem [ 0 ] === 'value_counts' ) {
610+ if ( currentDtype === 'Series' ) {
611+ codePattern = childObj . code2 ;
612+ } else {
613+ codePattern = childObj . code ;
614+ }
615+ } else {
616+ if ( childObj . toframe === true ) {
617+ if ( dtype === 'Series' ) {
618+ dataVar = new com_String ( ) ;
619+ dataVar . appendFormat ( "{0}.to_frame()" , data ) ;
620+ currentDtype = 'DataFrame' ;
621+ } else if ( currentDtype === 'Series' ) { // DataFrame with single column selected
622+ dataVar = new com_String ( ) ;
623+ dataVar . appendFormat ( "{0}[[{1}]]" , data , selected . map ( col => col . code ) . join ( ',' ) ) ;
624+ currentDtype = 'DataFrame' ;
625+ }
612626 }
627+ codePattern = childObj . code ;
613628 }
614- codePattern = childObj . code ;
615629 } else {
616630 codePattern = infoObj . code ;
617631 }
@@ -841,7 +855,8 @@ define([
841855 // load preview content
842856 let $infoPreviewTag = $ ( this . wrapSelector ( '#informationPreview' ) ) ;
843857 $infoPreviewTag . html ( '' ) ;
844- let code = this . generateCode ( ) ;
858+ let code = this . generateCodeForInfo ( ) ;
859+ this . tempCode = code ;
845860
846861 // use default pandas option
847862 // let defaultPOCode = new com_String();
0 commit comments