A GO-based method to predict subcellular locations of proteins. The accession numbers (ACs) of query proteins are used as keys to search against the GOA database to find the GO terms. For proteins without an AC, BLAST is used to find their homologs and the ACs of these homologs are used as the searching keys. Then, GO terms are used to construct the GO vectors, which are subsequently classified by SVMs. Comparing with the existing GO-based methods, GOASVM has the following advantages: (1) it constructs the GO vectors by using the frequency of occurrences of GO terms instead of 1–0 value; (2) it adopts a new strategy to incorporate more useful homologous GO information for classification; and (3) it selects a relevant GO-vector subspace by finding distinct GO terms instead of using the full GO-vector space.