@@ -1379,29 +1379,12 @@ export default class DataFrame extends NDframe implements DataFrameInterface {
13791379 return this ;
13801380 }
13811381
1382- if ( typeof other === "number" && axis === 1 ) {
1383- const originalTensor = this . tensor . clone ( ) ;
1384- const unit = new Array ( originalTensor . shape [ originalTensor . rank - 1 ] ) . fill ( NaN ) ;
1385- let diffArray : any [ ] = originalTensor . arraySync ( ) ;
1386- if ( other > 0 ) {
1387- for ( let i = 0 ; i < other ; i ++ ) {
1388- diffArray . unshift ( unit ) ;
1389- diffArray . pop ( ) ;
1390- }
1391- }
1392- else if ( other < 0 ) {
1393- for ( let i = 0 ; i > other ; i -- ) {
1394- diffArray . push ( unit ) ;
1395- diffArray . shift ( ) ;
1396- }
1382+ if ( typeof other === "number" ) {
1383+ let origDF = this . copy ( ) as DataFrame ;
1384+ if ( axis === 0 ) {
1385+ origDF = origDF . T ;
13971386 }
1398- const diffTensor = tensorflow . tensor2d ( diffArray , originalTensor . shape ) ;
1399- return this . $MathOps ( [ originalTensor , diffTensor ] , "sub" , inplace ) ;
1400- }
1401-
1402- if ( typeof other === "number" && axis === 0 ) {
1403- const origDF = this . copy ( ) as DataFrame ;
1404- const originalTensor = origDF . T . tensor . clone ( ) ;
1387+ const originalTensor = origDF . tensor . clone ( ) ;
14051388 const unit = new Array ( originalTensor . shape [ originalTensor . rank - 1 ] ) . fill ( NaN ) ;
14061389 let diffArray : any [ ] = originalTensor . arraySync ( ) ;
14071390 if ( other > 0 ) {
@@ -1418,7 +1401,10 @@ export default class DataFrame extends NDframe implements DataFrameInterface {
14181401 }
14191402 const diffTensor = tensorflow . tensor2d ( diffArray , originalTensor . shape ) ;
14201403 const diffDF = this . $MathOps ( [ originalTensor , diffTensor ] , "sub" , inplace ) as DataFrame ;
1421- return diffDF . T ;
1404+ if ( axis === 0 ) {
1405+ return diffDF . T ;
1406+ }
1407+ return diffDF ;
14221408 }
14231409
14241410 if ( other instanceof DataFrame || other instanceof Series ) {
0 commit comments