Reputation: 1
The below code works if value is 0.1 or 0.2..it is not working if value is 0.3475777755
def sentiment_score(value):
if value in np.arange(-5,-2,0.1,dtype=float):
return 'do_verynegative'
elif value in np.arange(-2,0,0.1,dtype=float):
return 'do_negative'
elif value in np.arange(0,1,0.1,dtype=float):
return 'do_neu'
elif value in np.arange(0,2,0.1,dtype=float):
return 'do_postive'
elif value in np.arange(2,5,0.1,dtype=float):
return 'do_verypositive'
else:
return 'error'
Please say how to do if the value has more than 1 decimal numbers?
Upvotes: 0
Views: 279
Reputation: 354
You want to translate a single number to a label, right? This code would achieve that for floats and integers.
def sentiment_score(value):
if value <= -2:
return 'do_verynegative'
elif value <= 0:
return 'do_negative'
elif value <= 1:
return 'do_neutral'
elif value <= 2:
return 'do_positive'
else:
return 'do_verypositive'
Upvotes: 1