BACKGROUND
although different experimental methods  <cit>  have already generated a large amount of ppi for many model species in recent years  <cit> , these existing ppi data are incomplete and contain many false positive interactions.
in order to refine these ppi data, computational approaches are urgently needed.
some recent researches have shown that ppis can be integrated with other kinds of biological data in using supervised learning to predict ppis  <cit> .
in supervised learning, a classifier is trained using truly interacting protein pairs  and protein pairs which are not interacting with each other .
then the trained classifier is able to recover false negative interactions and remove false positive interactions from the ppis input by users.
existing studies are mainly differing in the selection of features used in the prediction framework.
in these studies, different biological evidences are extracted and used as features training the classifier, including gene ontology  functional annotations  <cit> , protein sequences  <cit>  and co-expressed proteins  <cit> .
for the organisms or proteins which are lack of research, biological features may don't work well, so features based on network topology are also needed to integrate  <cit> .
although some frameworks and tools have also been proposed for predicting ppis  <cit> , they have two disadvantages in general.
first, most of the frameworks only support a few well studied model organisms.
second, these frameworks often need users to provide additional biological data along with the ppis.
moreover, different species often require different features, which make these existing frameworks not very convenient to use.
in this paper, we describe ppipre, an open-source framework for the ppi prediction problem.
the framework is implemented in the r language so it can work together with other r packages dealing with biological data and network  <cit> , which is different from other tools accessed via web services.
ppipre integrates features extracted from multiple heterogeneous data sources, including go  <cit> , kegg  <cit>  and topology of the ppi network.
users don't need to provide additional biological data other than gold-standard ppi data.
ppipre provides functions for measuring the similarity between proteins and for predicting ppis from the existing ppi data.
methods
heterogeneous features are integrated in the prediction framework of ppipre, including three go-based semantic similarities, one kegg-based similarity indicating the proteins are involved in the same pathways and three topology-based similarities using only the network structure of the ppi network.
we chose these three features to be integrated in our framework because they are highly available for the ppis of different species and can be easily accessed in the r environment.
not like other methods and software tools, ppipre did not integrate biological features that may not be available for the species or proteins which are not well studied, such as structural and domain information.
go-based semantic similarities
proteins are annotated by go with terms from three aspects: biological process , molecular function , and cellular component .
directed acyclic graphs  are used to describe these aspects.
it is known that interacting protein pairs are likely to be involved in similar biological processes or in similar cellular component compared to those non-interacting proteins  <cit> .
thus if two proteins are semantically similar based on go annotation, the probability that they actually interact is higher than two proteins that are less similar.
several similarity measures have been developed for evaluating the semantic similarity between two go terms  <cit> .
the information content  of go terms and the structure of the go dag are often used in these measures.
the ic of a term t can be defined as follows:
ict = - logpt
where p is the probability of occurrence of the term t in a certain go aspect.
two ic-based semantic similarity measures proposed recently are integrated in ppipre, which are topological clustering semantic similarity   <cit>  and intelligo  <cit> .
tcss
in tcss, the go dags are divided into subgraphs.
a ppi is scored higher if the two proteins are in the same subgraph.
the algorithm is made up of two major steps.
in the first step, a threshold on the ics of all terms is used to generate multiple subgraphs.
the roots of the subgraphs are the terms which are below the previously defined threshold.
if roots of two subgraphs have similar ic values, these two subgraphs are merged.
overlapping subgraphs may occur because some go terms have more than one parent terms.
in order to remove overlap between subgraphs, edge removal and term duplication are processed.
transitive reduction of go dag is used to remove overlapping edges by generating the smallest graph that has the same transitive closure as the original subgraph.
after edge removal, if a term is included in two or more subgraphs, it will be duplicated into each subgraph.
more details are described in  <cit> .
after the first step, a meta-graph is constructed by connecting all subgraphs.
then the second step called normalized scoring is processed.
for two go terms, normalized semantic similarity is calculated based on the meta-graph rather than the whole go dag so that more balanced semantic similarity scores can be obtained.
using the frequency of proteins that are annotated to go term t and its children, the information content of annotation  for a go term t is:
icat= - lnpt⋃c∈ntpc∑t∈opt⋃c∈ntpc
where pt is the proteins that are annotated by t in aspect o and n is the child terms of t.
the information content of subgraph  for term tms in the mth subgraph gms is defined as follows:
icstms=icatmsmaxtms∈gmsicatms
the information content of meta-graph  for a term tnm in meta-graph gm is defined as follows:
icmtnm=icatnmmaxtnm∈gmicatnm
finally, the similarity between two proteins i and j is defined as:
simtcss=maxsm,tn∈ti,tjicmmaxlcasm,tn if sm∈gms and tn∈gnsicsmaxlcasm,tn if sm,tn∈gns
where lca is the common ancestor of the terms sm and tn with the highest ic.
ti and tj are two sets of go terms which annotate the two proteins i and j respectively.
intelligo
the intelligo similarity measure introduces a novel annotation vector space model.
the coefficients of each go term in the vector space consider complementary properties.
the ic of a specific go term and its evidence code   <cit>  are used to assign this go term to a protein.
the coefficient αt given to term t is defined as follows:
αt=wg, t*iaft
where w is the weight of the ec which indicates the annotation origin between protein g and go term t, and iaf  represents the frequency of term t occurred in all the proteins annotated in the aspect where t belongs.
for two proteins i and j, the intelligo uses their vectorial representation i ⃗ and j ⃗ to measure their similarity, which is defined as follows:
simintelligoi,j = i ⃗*j ⃗i ⃗*i ⃗*j ⃗*j ⃗
the detailed explanation of the definition can be found in  <cit> .
wang's method
the similarity measure proposed by wang  <cit>  is also implemented in the ppipre package, which is based on the graph structure of go dag.
in the go dag, each edge has a type which is "is-a" or "part-of".
in wang's measure, a weight is given to each edge according to its type.
dagt =  represents the subgraph made up of term t and its ancestors, where tt is the set of the ancestor terms of t and et is the set of edges in dagt.
in dagt, st measures the semantic contribution of term n to term t, which is defined as:
{st=1st=max{we*st|n′∈childrenof}if t≠n
the similarity between two go term m and term n is defined as:
simwangm, n = ∑t∈tm∩tnsmt + sntsvm + svn
where sv is the sum of the semantic contribution of all the terms in dagm.
the semantic similarity between two proteins i and j is defined as the maximum value of all the similarity between any term that annotate i and any term that annotate j.
kegg-based similarity
proteins that work together in the same kegg pathway are likely to interact <cit>  <cit> .
the kegg-based similarity between proteins i and j is calculated using the co-pathway membership information in kegg.
the similarity is defined as:
simkeggi,j=pi∩pjpi∪pj
where p is the set of pathways which protein i involved in the kegg database.
topology-based similarities
in order to deal with the proteins that haven't got any annotations in go or kegg database, topology-based similarity measures are also integrated.
in ppipre, three different topological similarities are implemented.
the jaccard similarity  <cit>  between two proteins i and j is defined as:
simjaci,j=ni∩njni∪nj
where n is set of all the direct neighbours of protein i in ppi network.
adamic-adar similarity  <cit>  punishes the proteins with high degree by assigning more weights to the nodes with low degree in ppi network.
the aa similarity between two proteins i and j is defined as:
simaai,j=∑n∈ni∩nj1logkn
where kn is the degree of protein n.
resource allocation  similarity  <cit>  is similar to aa similarity and considers the common neighbours of two nodes as resource transmitters.
the ra similarity between two proteins i and j is defined as:
simrai,j=∑n∈nx∩ny1kn
prediction framework
the data of interacting protein pairs verified by experiments are very incomplete and the non-interacting protein pairs far outnumber interacting protein pairs.
so the classical svm  <cit>  which is able to handle small and unbalanced data is chosen to integrate different features in ppipre.
we have tested different kernels in e <dig> and the results showed no significant difference, so the default kernel and parameters are used in ppipre.
the prediction framework of ppipre is presented in figure  <dig>  heterogeneous features are calculated for the gold-standard ppi data set which is given by users, and the svm classifier is trained by the gold-standard positive and negative data set .
after the classifier is trained, the features are calculated from the query ppis input by users, and the trained classifier can predict false positive and false negative ppis from the input data .
RESULTS
since all the features are calculated within the package, users don't need to provide additional biological data for different species.
when users use ppipre to predict the ppis, they only need to provide both the gold-standard positive and negative training set and the test set.
in this paper, we test the performance of ppipre in yeast using two yeast gold-standard positive data sets which are a high quality binary data set provided by yu's research  <cit>  and the mips data set  <cit> .
self-interactions and duplicate interactions were removed previously.
the detail of the two gold-standard data sets is shown in table  <dig>
non-interacting pairs were randomly selected from the proteins in gold-standard positive data sets as gold-standard negative data sets.
the positive and negative data sets are set to the same size.
in order to minimize the impact to the topological characteristics of the ppi network, the degree of each protein was maintained.
10-fold cross validation was used to evaluate the performance of the prediction framework.
predictive abilities of go-based similarities
first, the predictive abilities of the three aspects of go on different data sets were evaluated.
we analysed the prediction performance using only one of the bp, mf and cc aspects.
the receiver operating characteristic  curves are shown in figure  <dig> and figure  <dig>  in order to assess these results quantitatively, the area under the roc curve  of each roc curve was calculated.
the result is shown in table  <dig>
tests were performed separately for biological process , molecular function  and cellular component  ontologies in two data sets.
we define similarity between two proteins as the maximum similarity found between any two go terms that annotate them.
the best roc scores for each data set are in bold.
for the binary data set, the bp aspect shows the best performance among all three aspects in roc analysis of three go-based semantic similarities .
this result is expected.
the bp aspect is related to protein interaction and thus can be used to predict them.
for the co-complex data set, the cc aspect shows the best performance in roc analysis of three go-based semantic similarities .
since the mips data set is composed of protein complexes, and a protein complex can only be formed if its proteins are localized within the same compartment of the cell, terms in the cc aspect correctly reflect the functional grouping of proteins in these complexes.
we then analysed the prediction performance using a combination of go aspects.
the roc curves of a combination of two aspects are shown in figure  <dig> and figure  <dig>  the roc curves of combination three aspects are shown in figure  <dig>  the aucs of the roc curves are shown in table  <dig>  the results show that by combing more than one go aspect, our method could get a better prediction performance than using a single aspect for both binary data set and co-complex data set.
and the overall best performance was achieved by combing all the three go aspects.
so it is necessary to integrate all the three go aspects in the prediction framework.
tests were performed using a combination of three go aspects.
we define similarity between two proteins as the maximum similarity found between any two go terms that annotate them.
the best roc scores for each data set are in bold.
predictive abilities of kegg-based and topological similarities
then, the predictive abilities of kegg-based similarity and three topological similarities were evaluated.
for binary and co-complex data sets, the performance of kegg-based similarity shows no big difference .
on the contrary, three topological similarities work perfectly for co-complex data set, but show only modest effects for binary data set.
this is because the mips co-complex data set is composed of multi-protein complexes, and the interacting pairs are all in the same complex.
the co-complex data set represents several unconnected subgraphs in the corresponding ppi network, meaning that two proteins from different complexes had no common neighbours in the ppi network.
so the topological similarities of two proteins from two different complexes are zero while topological similarities of two proteins from the same complexes are not.
tests were performed separately for kegg-based similarity , jaccard similarity , adamic-adar similarity  and resource allocation similarity  in two data sets.
the best roc scores for each data set are in bold.
integration of biological and topological similarities
after analysing biological and topological features separately, we integrated these heterogeneous features together.
the roc curves of two kinds of ppi data sets using go-based, kegg-based and topological similarities are shown in figure  <dig>  the auc of binary and co-complex ppi data sets are  <dig>  and  <dig> .
the result shows that integrating biological and topological similarities can improve the prediction performance.
so, it's necessary to integrate heterogeneous features together when dealing with the ppi prediction problem.
all the features are integrated in ppipre.
for proteins with unknown annotations in go and kegg, the go-based and kegg-based similarity measures cannot work.
but the impact on these two data sets can be ignored since interactions without annotations are only  <dig> in the binary data set  and  <dig> in mips data set .
however, when ppipre is used on a large amount of proteins that are poorly annotated in go, users should consider that the performance of ppipre may be hampered under such situation.
implementation and usage
the current version of ppipre supports  <dig> species.
the detail of the species supported and ic data used in go-based semantic similarities are described in  <cit> .
the annotation data of go and kegg are got from the packages go.db and kegg.db.
ppipre has been submitted to cran  and can be installed and loaded easily in the r environment.
ppipre provides functions for calculating similarities and predicting ppis.
a summary of the functions available is shown in table  <dig>  detailed descriptions and examples for all the functions are contained in the manual provided within ppipre.
CONCLUSIONS
an open-source framework ppipre for ppi prediction is proposed in this paper.
several heterogeneous features are combined in ppipre, including three go-based similarities, one kegg-based similarity and three topology-based similarities.
to make the prediction, users don't need to provide additional biological data other than gold-standard ppi data.
ppipre can be integrated into existing bioinformatics analysis pipelines in the r environment.
other features will be evaluated and integrated in future work, and the framework will be tested on ppi data of more species especially those poorly annotated in go.
competing interests
the authors declare that they have no competing interests.
authors' contributions
lg conceived of the study, supervised the project and revised the manuscript.
yd implemented the framework, performed the experiments, and drafted the manuscript.
bw participated in the data analysis.
all authors read and approved the final manuscript.

 although different experimental methods have already generated a large amount of ppi for many model species in recent years, these existing ppi data are incomplete and contain many false positive interactions. in order to refine these ppi data, computational approaches are urgently needed. some recent researches have shown that ppis can be integrated with other kinds of biological data in using supervised learning to predict ppis. in supervised learning, a classifier is trained using truly interacting protein pairs and protein pairs which are not interacting with each other. then the trained classifier is able to recover false negative interactions and remove false positive interactions from the ppis input by users. existing studies are mainly differing in the selection of features used in the prediction framework. in these studies, different biological evidences are extracted and used as features training the classifier, including gene ontology functional annotations, protein sequences and co-expressed proteins. for the organisms or proteins which are lack of research, biological features may don't work well, so features based on network topology are also needed to integrate. although some frameworks and tools have also been proposed for predicting ppis, they have two disadvantages in general. first, most of the frameworks only support a few well studied model organisms. second, these frameworks often need users to provide additional biological data along with the ppis. moreover, different species often require different features, which make these existing frameworks not very convenient to use. in this paper, we describe ppipre, an open-source framework for the ppi prediction problem. the framework is implemented in the r language so it can work together with other r packages dealing with biological data and network, which is different from other tools accessed via web services. ppipre integrates features extracted from multiple heterogeneous data sources, including go, kegg and topology of the ppi network. users don't need to provide additional biological data other than gold-standard ppi data. ppipre provides functions for measuring the similarity between proteins and for predicting ppis from the existing ppi data. methods heterogeneous features are integrated in the prediction framework of ppipre, including three go-based semantic similarities, one kegg-based similarity indicating the proteins are involved in the same pathways and three topology-based similarities using only the network structure of the ppi network. we chose these three features to be integrated in our framework because they are highly available for the ppis of different species and can be easily accessed in the r environment. not like other methods and software tools, ppipre did not integrate biological features that may not be available for the species or proteins which are not well studied, such as structural and domain information. go-based semantic similarities proteins are annotated by go with terms from three aspects: biological process, molecular function, and cellular component. directed acyclic graphs are used to describe these aspects. it is known that interacting protein pairs are likely to be involved in similar biological processes or in similar cellular component compared to those non-interacting proteins. thus if two proteins are semantically similar based on go annotation, the probability that they actually interact is higher than two proteins that are less similar. several similarity measures have been developed for evaluating the semantic similarity between two go terms. the information content of go terms and the structure of the go dag are often used in these measures. the ic of a term t can be defined as follows: ict = - logpt where p is the probability of occurrence of the term t in a certain go aspect. two ic-based semantic similarity measures proposed recently are integrated in ppipre, which are topological clustering semantic similarity and intelligo. tcss in tcss, the go dags are divided into subgraphs. a ppi is scored higher if the two proteins are in the same subgraph. the algorithm is made up of two major steps. in the first step, a threshold on the ics of all terms is used to generate multiple subgraphs. the roots of the subgraphs are the terms which are below the previously defined threshold. if roots of two subgraphs have similar ic values, these two subgraphs are merged. overlapping subgraphs may occur because some go terms have more than one parent terms. in order to remove overlap between subgraphs, edge removal and term duplication are processed. transitive reduction of go dag is used to remove overlapping edges by generating the smallest graph that has the same transitive closure as the original subgraph. after edge removal, if a term is included in two or more subgraphs, it will be duplicated into each subgraph. more details are described in. after the first step, a meta-graph is constructed by connecting all subgraphs. then the second step called normalized scoring is processed. for two go terms, normalized semantic similarity is calculated based on the meta-graph rather than the whole go dag so that more balanced semantic similarity scores can be obtained. using the frequency of proteins that are annotated to go term t and its children, the information content of annotation for a go term t is: icat= - lnpt⋃c∈ntpc∑t∈opt⋃c∈ntpc where pt is the proteins that are annotated by t in aspect o and n is the child terms of t. the information content of subgraph for term tms in the mth subgraph gms is defined as follows: icstms=icatmsmaxtms∈gmsicatms the information content of meta-graph for a term tnm in meta-graph gm is defined as follows: icmtnm=icatnmmaxtnm∈gmicatnm finally, the similarity between two proteins i and j is defined as: simtcss=maxsm,tn∈ti,tjicmmaxlcasm,tn if sm∈gms and tn∈gnsicsmaxlcasm,tn if sm,tn∈gns where lca is the common ancestor of the terms sm and tn with the highest ic. ti and tj are two sets of go terms which annotate the two proteins i and j respectively. intelligo the intelligo similarity measure introduces a novel annotation vector space model. the coefficients of each go term in the vector space consider complementary properties. the ic of a specific go term and its evidence code are used to assign this go term to a protein. the coefficient αt given to term t is defined as follows: αt=wg, t*iaft where w is the weight of the ec which indicates the annotation origin between protein g and go term t, and iaf represents the frequency of term t occurred in all the proteins annotated in the aspect where t belongs. for two proteins i and j, the intelligo uses their vectorial representation i ⃗ and j ⃗ to measure their similarity, which is defined as follows: simintelligoi,j = i ⃗*j ⃗i ⃗*i ⃗*j ⃗*j ⃗ the detailed explanation of the definition can be found in. wang's method the similarity measure proposed by wang is also implemented in the ppipre package, which is based on the graph structure of go dag. in the go dag, each edge has a type which is "is-a" or "part-of". in wang's measure, a weight is given to each edge according to its type. dagt = represents the subgraph made up of term t and its ancestors, where tt is the set of the ancestor terms of t and et is the set of edges in dagt. in dagt, st measures the semantic contribution of term n to term t, which is defined as: {st=1st=max{we*st|n′∈childrenof}if t≠n the similarity between two go term m and term n is defined as: simwangm, n = ∑t∈tm∩tnsmt + sntsvm + svn where sv is the sum of the semantic contribution of all the terms in dagm. the semantic similarity between two proteins i and j is defined as the maximum value of all the similarity between any term that annotate i and any term that annotate j. kegg-based similarity proteins that work together in the same kegg pathway are likely to interact. the kegg-based similarity between proteins i and j is calculated using the co-pathway membership information in kegg. the similarity is defined as: simkeggi,j=pi∩pjpi∪pj where p is the set of pathways which protein i involved in the kegg database. topology-based similarities in order to deal with the proteins that haven't got any annotations in go or kegg database, topology-based similarity measures are also integrated. in ppipre, three different topological similarities are implemented. the jaccard similarity between two proteins i and j is defined as: simjaci,j=ni∩njni∪nj where n is set of all the direct neighbours of protein i in ppi network. adamic-adar similarity punishes the proteins with high degree by assigning more weights to the nodes with low degree in ppi network. the aa similarity between two proteins i and j is defined as: simaai,j=∑n∈ni∩nj1logkn where kn is the degree of protein n. resource allocation similarity is similar to aa similarity and considers the common neighbours of two nodes as resource transmitters. the ra similarity between two proteins i and j is defined as: simrai,j=∑n∈nx∩ny1kn prediction framework the data of interacting protein pairs verified by experiments are very incomplete and the non-interacting protein pairs far outnumber interacting protein pairs. so the classical svm which is able to handle small and unbalanced data is chosen to integrate different features in ppipre. we have tested different kernels in e and the results showed no significant difference, so the default kernel and parameters are used in ppipre. the prediction framework of ppipre is presented in figure heterogeneous features are calculated for the gold-standard ppi data set which is given by users, and the svm classifier is trained by the gold-standard positive and negative data set. after the classifier is trained, the features are calculated from the query ppis input by users, and the trained classifier can predict false positive and false negative ppis from the input data.  since all the features are calculated within the package, users don't need to provide additional biological data for different species. when users use ppipre to predict the ppis, they only need to provide both the gold-standard positive and negative training set and the test set. in this paper, we test the performance of ppipre in yeast using two yeast gold-standard positive data sets which are a high quality binary data set provided by yu's research and the mips data set. self-interactions and duplicate interactions were removed previously. the detail of the two gold-standard data sets is shown in table non-interacting pairs were randomly selected from the proteins in gold-standard positive data sets as gold-standard negative data sets. the positive and negative data sets are set to the same size. in order to minimize the impact to the topological characteristics of the ppi network, the degree of each protein was maintained. 10-fold cross validation was used to evaluate the performance of the prediction framework. predictive abilities of go-based similarities first, the predictive abilities of the three aspects of go on different data sets were evaluated. we analysed the prediction performance using only one of the bp, mf and cc aspects. the receiver operating characteristic curves are shown in figure and figure in order to assess these results quantitatively, the area under the roc curve of each roc curve was calculated. the result is shown in table tests were performed separately for biological process, molecular function and cellular component ontologies in two data sets. we define similarity between two proteins as the maximum similarity found between any two go terms that annotate them. the best roc scores for each data set are in bold. for the binary data set, the bp aspect shows the best performance among all three aspects in roc analysis of three go-based semantic similarities. this result is expected. the bp aspect is related to protein interaction and thus can be used to predict them. for the co-complex data set, the cc aspect shows the best performance in roc analysis of three go-based semantic similarities. since the mips data set is composed of protein complexes, and a protein complex can only be formed if its proteins are localized within the same compartment of the cell, terms in the cc aspect correctly reflect the functional grouping of proteins in these complexes. we then analysed the prediction performance using a combination of go aspects. the roc curves of a combination of two aspects are shown in figure and figure the roc curves of combination three aspects are shown in figure the aucs of the roc curves are shown in table the results show that by combing more than one go aspect, our method could get a better prediction performance than using a single aspect for both binary data set and co-complex data set. and the overall best performance was achieved by combing all the three go aspects. so it is necessary to integrate all the three go aspects in the prediction framework. tests were performed using a combination of three go aspects. we define similarity between two proteins as the maximum similarity found between any two go terms that annotate them. the best roc scores for each data set are in bold. predictive abilities of kegg-based and topological similarities then, the predictive abilities of kegg-based similarity and three topological similarities were evaluated. for binary and co-complex data sets, the performance of kegg-based similarity shows no big difference. on the contrary, three topological similarities work perfectly for co-complex data set, but show only modest effects for binary data set. this is because the mips co-complex data set is composed of multi-protein complexes, and the interacting pairs are all in the same complex. the co-complex data set represents several unconnected subgraphs in the corresponding ppi network, meaning that two proteins from different complexes had no common neighbours in the ppi network. so the topological similarities of two proteins from two different complexes are zero while topological similarities of two proteins from the same complexes are not. tests were performed separately for kegg-based similarity, jaccard similarity, adamic-adar similarity and resource allocation similarity in two data sets. the best roc scores for each data set are in bold. integration of biological and topological similarities after analysing biological and topological features separately, we integrated these heterogeneous features together. the roc curves of two kinds of ppi data sets using go-based, kegg-based and topological similarities are shown in figure the auc of binary and co-complex ppi data sets are and. the result shows that integrating biological and topological similarities can improve the prediction performance. so, it's necessary to integrate heterogeneous features together when dealing with the ppi prediction problem. all the features are integrated in ppipre. for proteins with unknown annotations in go and kegg, the go-based and kegg-based similarity measures cannot work. but the impact on these two data sets can be ignored since interactions without annotations are only in the binary data set and in mips data set. however, when ppipre is used on a large amount of proteins that are poorly annotated in go, users should consider that the performance of ppipre may be hampered under such situation. implementation and usage the current version of ppipre supports species. the detail of the species supported and ic data used in go-based semantic similarities are described in. the annotation data of go and kegg are got from the packages go.db and kegg.db. ppipre has been submitted to cran and can be installed and loaded easily in the r environment. ppipre provides functions for calculating similarities and predicting ppis. a summary of the functions available is shown in table detailed descriptions and examples for all the functions are contained in the manual provided within ppipre.  an open-source framework ppipre for ppi prediction is proposed in this paper. several heterogeneous features are combined in ppipre, including three go-based similarities, one kegg-based similarity and three topology-based similarities. to make the prediction, users don't need to provide additional biological data other than gold-standard ppi data. ppipre can be integrated into existing bioinformatics analysis pipelines in the r environment. other features will be evaluated and integrated in future work, and the framework will be tested on ppi data of more species especially those poorly annotated in go. competing interests the authors declare that they have no competing interests. authors' contributions lg conceived of the study, supervised the project and revised the manuscript. yd implemented the framework, performed the experiments, and drafted the manuscript. bw participated in the data analysis. all authors read and approved the final manuscript. 
the analysis also shows that using only features based solely on the topology of the ppi network can get a very good result when predicting the co-complex ppi data. only the original ppi data and gold-standard ppi data are required from users. we applied our framework to both binary and co-complex gold-standard ppi data sets. and predictive abilities of different features for different kinds of ppi data have not been studied. the experiments on binary and co-complex gold-standard yeast ppi data sets show that there exist big differences among the predictive abilities of different features on different kinds of ppi data sets. and the prediction performance on the two data sets shows that ppipre is capable of handling ppi data in different kinds and sizes. ppipre provides useful functions for analysing ppi data and can be used to predict ppis for multiple species. since the current biological experimental techniques are time-consuming and expensive, and the results suffer from the problems of incompleteness and noise, developing computational methods and software tools to predict ppis is necessary. in this paper, we propose ppipre, an open-source framework for ppi analysis and prediction using a combination of heterogeneous features including three go-based semantic similarities, one kegg-based co-pathway similarity and three topology-based similarities. ppipre is implemented in the r language and is freely available on the cran.
 protein-protein interactions are crucial in cellular processes. since the current biological experimental techniques are time-consuming and expensive, and the results suffer from the problems of incompleteness and noise, developing computational methods and software tools to predict ppis is necessary. although several approaches have been proposed, the species supported are often limited and additional data like homologous interactions in other species, protein sequence and protein expression are often required. and predictive abilities of different features for different kinds of ppi data have not been studied.  in this paper, we propose ppipre, an open-source framework for ppi analysis and prediction using a combination of heterogeneous features including three go-based semantic similarities, one kegg-based co-pathway similarity and three topology-based similarities. it supports up to twenty species. only the original ppi data and gold-standard ppi data are required from users. the experiments on binary and co-complex gold-standard yeast ppi data sets show that there exist big differences among the predictive abilities of different features on different kinds of ppi data sets. and the prediction performance on the two data sets shows that ppipre is capable of handling ppi data in different kinds and sizes. ppipre is implemented in the r language and is freely available on the cran.  we applied our framework to both binary and co-complex gold-standard ppi data sets. the detailed analysis on three go aspects suggests that different go aspects should be used on different kinds of data sets, and that combining all the three aspects of go often gets the best result. the analysis also shows that using only features based solely on the topology of the ppi network can get a very good result when predicting the co-complex ppi data. ppipre provides useful functions for analysing ppi data and can be used to predict ppis for multiple species. 18- august the 6th international conference on computational systems biology xi'an, china 