An in vitro method for detecting a prostate cancer in a subject in need thereof, the method comprising: determining the expression level of at least 38 biomarkers from a test sample obtained from the subject by contacting the test sample with a plurality of agents specific to detect the expression of the at least 38 biomarkers, wherein the at least 38 biomarkers comprise AAMP, ANO7, AR, AR-V7, C16orf89, CHTOP, COL1A1, EDC4, FGFR2, FXYD7, FYCO1, HNRNPU, HPN, KRT15, KRT23, MAN2B2, MAX, MRPS25, NDUFS2, PPARGC1A, PPRC1, RAD23A, REPIN1, SDR39U1, SETBP1, SLC14A1, SLC18A2, SMC4, SPARC, SQLE, STRIP1, STX12, TMPRSS2-ERG T1E4, TMPRSS2-ERG T2E4, TRIM29, UNC45A, XPC, and a housekeeping gene; normalizing the expression level of each of AAMP, ANO7, AR, AR-V7, C16orf89, CHTOP, COL1A1, EDC4, FGFR2, FXYD7, FYCO1, HNRNPU, HPN, KRT15, KRT23, MAN2B2, MAX, MRPS25, NDUFS2, PPARGC1A, PPRC1, RAD23A, REPIN1, SDR39U1, SETBP1, SLC14A1, SLC18A2, SMC4, SPARC, SQLE, STRIP1, STX12, TMPRSS2-ERG T1E4, TMPRSS2-ERG T2E4, TRIM29, UNC45A, and XPC to the expression level of the housekeeping gene, thereby obtaining a normalized expression level of each of AAMP, ANO7, AR, AR-V7, C16orf89, CHTOP, COL1A1, EDC4, FGFR2, FXYD7, FYCO1, HNRNPU, HPN, KRT15, KRT23, MAN2B2, MAX, MRPS25, NDUFS2, PPARGC1A, PPRC1, RAD23A, REPIN1, SDR39U1, SETBP1, SLC14A1, SLC18A2, SMC4, SPARC, SQLE, STRIP1, STX12, TMPRSS2-ERG T1E4, TMPRSS2-ERG T2E4, TRIM29, UNC45A, and XPC, inputting each normalized expression level into an algorithm to generate a probability score, wherein the algorithm is a prediction model generated using one or more machine-learning algorithms; comparing the probability score with a first predetermined cutoff value; and identifying the presence of a prostate cancer in the subject when the probability score is equal to or greater than the first predetermined cutoff value or identifying the absence of a prostate cancer in the subject when the probability score is less than the first predetermined cutoff value. determining the expression level of at least 38 biomarkers from a test sample obtained from the subject by contacting the test sample with a plurality of agents specific to detect the expression of the at least 38 biomarkers, wherein the at least 38 biomarkers comprise AAMP, ANO7, AR, AR-V7, C16orf89, CHTOP, COL1A1, EDC4, FGFR2, FXYD7, FYCO1, HNRNPU, HPN, KRT15, KRT23, MAN2B2, MAX, MRPS25, NDUFS2, PPARGC1A, PPRC1, RAD23A, REPIN1, SDR39U1, SETBP1, SLC14A1, SLC18A2, SMC4, SPARC, SQLE, STRIP1, STX12, TMPRSS2-ERG T1E4, TMPRSS2-ERG T2E4, TRIM29, UNC45A, XPC, and a housekeeping gene; normalizing the expression level of each of AAMP, ANO7, AR, AR-V7, C16orf89, CHTOP, COL1A1, EDC4, FGFR2, FXYD7, FYCO1, HNRNPU, HPN, KRT15, KRT23, MAN2B2, MAX, MRPS25, NDUFS2, PPARGC1A, PPRC1, RAD23A, REPIN1, SDR39U1, SETBP1, SLC14A1, SLC18A2, SMC4, SPARC, SQLE, STRIP1, STX12, TMPRSS2-ERG T1E4, TMPRSS2-ERG T2E4, TRIM29, UNC45A, and XPC to the expression level of the housekeeping gene, thereby obtaining a normalized expression level of each of AAMP, ANO7, AR, AR-V7, C16orf89, CHTOP, COL1A1, EDC4, FGFR2, FXYD7, FYCO1, HNRNPU, HPN, KRT15, KRT23, MAN2B2, MAX, MRPS25, NDUFS2, PPARGC1A, PPRC1, RAD23A, REPIN1, SDR39U1, SETBP1, SLC14A1, SLC18A2, SMC4, SPARC, SQLE, STRIP1, STX12, TMPRSS2-ERG T1E4, TMPRSS2-ERG T2E4, TRIM29, UNC45A, and XPC, inputting each normalized expression level into an algorithm to generate a probability score, wherein the algorithm is a prediction model generated using one or more machine-learning algorithms; comparing the probability score with a first predetermined cutoff value; and identifying the presence of a prostate cancer in the subject when the probability score is equal to or greater than the first predetermined cutoff value or identifying the absence of a prostate cancer in the subject when the probability score is less than the first predetermined cutoff value.