  In this paper, we address the problem of detection, classification and
quantification of emotions of text in any form. We consider English text
collected from social media like Twitter, which can provide information having
utility in a variety of ways, especially opinion mining. Social media like
Twitter and Facebook is full of emotions, feelings and opinions of people all
over the world. However, analyzing and classifying text on the basis of
emotions is a big challenge and can be considered as an advanced form of
Sentiment Analysis. This paper proposes a method to classify text into six
different Emotion-Categories: Happiness, Sadness, Fear, Anger, Surprise and
Disgust. In our model, we use two different approaches and combine them to
effectively extract these emotions from text. The first approach is based on
Natural Language Processing, and uses several textual features like emoticons,
degree words and negations, Parts Of Speech and other grammatical analysis. The
second approach is based on Machine Learning classification algorithms. We have
also successfully devised a method to automate the creation of the training-set
itself, so as to eliminate the need of manual annotation of large datasets.
Moreover, we have managed to create a large bag of emotional words, along with
their emotion-intensities. On testing, it is shown that our model provides
significant accuracy in classifying tweets taken from Twitter.
