def pwArcsinh(inputArray,constant):
<EOL>countsum=np.sum(inputArray,axis=<NUM_LIT:1>) <EOL>holder=np.zeros_like(inputArray,dtype=float)<EOL>transformed=np.zeros_like(inputArray,dtype=float) <EOL>print ("<STR_LIT>")<EOL>for i in range(<NUM_LIT:0>,inputArray.shape[<NUM_LIT:0>]):<EOL><INDENT>print (((i/inputArray.shape[<NUM_LIT:0>])*<NUM_LIT:100>),end='<STR_LIT:\r>')<EOL>holder[i,:]=(inputArray[i,:]/countsum[i])*constant <EOL>transformed[i,:]=np.arcsinh((holder[i,:]/constant*<NUM_LIT:1000>)) <EOL><DEDENT>return transformed<EOL>
Function returns an ndarray by performing a pointwise inverse hyperbolic sine transformation on the input ndarray 
:param inputArray: ndarray of gene expression data in raw count or RPKM format 
:param contstant: some constant to normalize for total read count number
:return transformed: ndarray of transformed inputArray