Background I have a data set of 4665 proteins from Phytophthora cactorum and want to analyze them in the String database as other database does not have Phytophthora cactorum for GO or KEGG analysis. The String database states I can upload a maximum of 2000 proteins at once.

Thus I subset my data into 3 sets and upload. However, it gives/risks statistically biased analysis.

Question Is there any possibility I can analyze all of my 4665 protein sequences at once?

Looking forward for the help.

Best regards,


  • $\begingroup$ I'll migrate this to bioinformatics which it is better suited. $\endgroup$
    – Chris
    Commented Nov 6, 2022 at 15:42
  • 3
    $\begingroup$ What kind of analysis? Are you looking for the proteins each of your 4665 interact with? Something else? Please edit your question and explain the kind of analysis you want to make, the questions you will be asking, so we can understand and suggest alternatives. $\endgroup$
    – terdon
    Commented Nov 7, 2022 at 9:15
  • $\begingroup$ Do you just want to annotate them with function, or something else? $\endgroup$ Commented Nov 7, 2022 at 16:43
  • $\begingroup$ @terdon I wanted to have GO and KEGG terms and subcellular localization prediction as string website gives when we upload a set of protein sequences. SO my objective is to have GO and KEGG enrichment analysis. I do not need network. No other database has Phytophthora cactorum for GO and KEGG analysis. $\endgroup$
    – Bikal
    Commented Nov 7, 2022 at 20:27

3 Answers 3


I didn't even know STRING has the kind of analysis you are requesting, I don't see it on their webpage. In any case, the standard tool for GO or KEGG analyses, at least back when I was doing this sort of thing, is DAVID.

I have confirmed that it does have Phytophthora cactorum so all you need to do is upload your file there and use their tools.

  • $\begingroup$ String is a major protein database. Phytophthora infestans is on KEGG but I am not aware that Phytophthora cactorum is there. I think there could some confusion. For the OP the difference is likely important. $\endgroup$
    – M__
    Commented Nov 8, 2022 at 20:34
  • $\begingroup$ @M__ yes, I know STRING but I knew it as a database of protein protein interactions and wasn't aware that they also offered other tools. But I am not suggesting KEGG, I am suggesting DAVID which was my goto tool for GO enrichment and pathway analysis when I was working in this field. And yes, it does have P. cactorum, I checked before posting. $\endgroup$
    – terdon
    Commented Nov 8, 2022 at 21:41
  • $\begingroup$ Okay I don't know DAVID. $\endgroup$
    – M__
    Commented Nov 8, 2022 at 23:10

Just to confirm the OPs question going to https://string-db.org/cgi/organisms and typing "Phytophthora cactorum", then clicking 'random network' results in..


I've encountered String for metabolic pathways, so I don't have direct experience with the OPs query.

All databases are all limited by skews in underlying wet-lab work, e.g. there are some large taxonomic groups of bacteria that are complete blanks, i.e. no-one has ever worked on them. This however doesn't concern the OP because they are focussing on a single plant species (I think thats what it is, but could be wrong).

The limit on uploading is understandable - these are not our computers and someone else pays for the OPs analysis.

What the OP suggests is the '3 uploads' comprise a sampling bias and this too is very, very understandable regardless of what analysis is performed.

Example If you've loads of COG 'V' type genes (disease resistance), for example, in one of the uploads, but not evenly mixed this will certainly skew the results.

Solution The solution in this scenario is to randomly sample the genes amongst the 3 uploads. This is easy to do in Python via random and itertools libraries/packages . It would be easy to write a custom script. (separate question).

Normally in a randomisation procedure there needs to be several, e.g. 10, iterations. So essential the OP would need to upload and perform the analysis 30 time comprising 3 groups of 10 replicates.

Example 2 Equally if the OP is honing a particularly metabolic pathway and the genes got split between the three uploads then visibility of the pathway would be partial.

Solution The OP could cluster genes into one of the three uploads by membership to a given metabolic pathway. This is more difficult. This will depend on what the upstream annotation software/algorithm was because often the pathway membership is described in that annotation file. string is a strong database for pathway membership.

Example 3 The skew is taxonomic membership, I don't this this counts here because it is a single species.


  1. Ultimately, the preferred solution is to perform the analysis locally this way the OP will not need to break up their file. With KEGG the databases can be downloaded.
  2. The OP could contact string essentially asking if they could supply an account that lifts the upload limit. string would likely want a fee if they will do this at all. I honestly have no idea.
  3. There are other servers as @terdon recommends, I think BRITE is another one which might have the plant (which is what I think it is) under investigation.
  4. The OP could go through solutions 1 and 2 above. Solution 1 is likely to be 'the solution', but there needs to be a supporting script written (separate question).

APIs I don't know about string but if there was an API this would enable a multiple replicate analysis to be coded without all the manual point and click that it would otherwise involve.

My opinion of Go is that it is sparsely populated, just saying.


Hej Bikal,

I am not sure why you would like to inspect all 4,000+ proteins at once. I would expect that you have a look on a subset of "interesting" genes, eg from a differential expression experiment.

Yet, since you've asked, yet it is possible to get the data for all proteins at once.

You can download the network for entire genomes and analyze with what ever tool you seem fit.

Alternatively, may I recommend you to have a look at the Cytoscape plugin stringApp. It should help you with the download, analysis (including pathway enrichment), and visualizations. Unlike the String network in your web browser, Cytoscape can easily handle large networks.

The tool's authors have a nice series of video tutorials of how to use it. Hopefully that helps in your work.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.