Class: FeatureSet::FeatureBuilders::Emoticon

Inherits:
Base
  • Object
show all
Defined in:
lib/feature_set/feature_builders/emoticon.rb

Constant Summary collapse

HAPPY =
[">:]", ":-)", ":)", ":o)", ":]", ":3", ":c)", ":>", "=]", "8)", "=)", ":}", ":^)", ">:D", ":-D", ":D", "8-D", "8D", "x-D", "xD", "X-D", "XD", "=-D", "=D", "=-3", "=3"]
SAD =
[":'(", ";*(", ":_(", "T.T", "T_T", "Y.Y", "Y_Y", ">:[", ":-(", ":(", ":-c", ":c", ":-<", ":<", ":-[", ":[", ":{", ">.>", "<.<", ">.<", "D:<", "D:", "D8", "D;", "D=", "DX", "v.v", "D-':"]
HUMOR =
[">;]", ";-)", ";)", "*-)", "*)", ";-]", ";]", ";D", ">:P", ":-P", ":P", "X-P", "x-p", "xp", "XP", ":-p", ":p", "=p", ":-b", ":b"]

Instance Attribute Summary

Attributes inherited from Base

#options

Instance Method Summary collapse

Methods inherited from Base

#before_build_features, #initialize

Constructor Details

This class inherits a constructor from FeatureSet::FeatureBuilders::Base

Instance Method Details

#build_features(datum, key, row) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/feature_set/feature_builders/emoticon.rb', line 10

def build_features(datum, key, row)
  return {} unless datum.value.is_a?(String)
  tokens = datum.value.split(/\s+/)
  { :happy_emoticon_count => (tokens & HAPPY).length,
    :sad_emoticon_count => (tokens & SAD).length,
    :humor_emoticon_count => (tokens & HUMOR).length }
end