Then I used String Tie for the abundance. But I found some genes with low TPM and FPKM values in String Tie output where the HTseq count says Zero.
So my question which option I can use to get TPM and FPKM in DESEq per samples ?
I do not see the point using stringtie here. DESeq2 can give you proper FPKMs but you have to give it information about the gene length. This should come at best from a method that accurately determines it, such as salmon, or from the htseq output. Then you can either use the dedicated DESeq2::fpkm function or calculate TPMs manually as shown here: DESeq2: Is it possible to convert read counts to expression values via TPM and return these values?