I am analysing gene expression data which is normalized. I've clustered it using different techniques such as hierarchical and k-means and I've recently attempted to group it using t-SNE so I can see how different techniques would group the genes according to their expression patterns across our experiment. When I try to use the package tsne in R, its as follows. First I created a distance matrix for the data using dist() and then I'm using tsne function:
t = tsne(distance_matrix, initial_config = NULL, k = 2, initial_dims = 30, perplexity = 30, max_iter = 1000, min_cost = 0, epoch_callback = NULL, whiten = TRUE, epoch=100)
I get the following error which I don't understand:
sigma summary: Min. : 0.05865 |1st Qu. : 0.07213 |Median : 0.07861 |Mean : 0.08058 |3rd Qu. : 0.09074 |Max. : 0.1056 | Epoch: Iteration #100 error is: 12.3600149047312 Epoch: Iteration #200 error is: 0.782907087502658 Epoch: Iteration #300 error is: 0.482898016719146
tsne package: http://cran.r-project.org/web/packages/tsne/tsne.pdf
Please help! Many thanks.
Are you sure you're getting an error? It looks as if
tsneis just being verbose and just letting you know about the "state of affairs" after every 100 iterations. Is there something in your
tvariable? Also, you should pick another variable besides
tso as to not avoid the confusion between your var and the
Thank you. I changed the variable name and I'm still getting the same. If it is telling me something, there's no documentation for it in the manual and I cant really figure out what this means and if it's something important.
What I'm saying is that if the "result" you are getting is only the part you pasted in, then it doesn't look like this is an error. It looks as if the
tsnefunction is only printing to "stdout" telling you about the progress that it is making after every 100 iterations.
After you run
tsne, does it return something to you? If you run
x <- tsne(...), what does
It gives me this :  "matrix" "array" "structure" "vector"
Great -- so ... we're done, right? To recap:
tsneis not failing with an error, and you get what you want. The "verbosity" after you call
tsneis just keeping you "up to speed" with what the function is doing internally while it is running.
Thanks a lot Steve!!