количество слов solr, слово за словом в предложении

{
id: "1698627066",
screen_name: "RomanceInfinity",
text: [
"Going NYP to have lunch with bro because I got too much time in between!!!",
"nyp"
],
stance: "",
source: "<a href="http://twitter.com/download/iphone" rel="nofollow">Twitter for iPhone</a>",
fromid: "411377814521147392",
favourite: "false",
date: "2013-12-13 14:11:28",
replyto: "",
replytoid: "",
retweetfrom: "",
domaintype: "",
keywords: [
"nyp"
],
ratio: "",
latitude: 1000,
longitude: 1000,
retweet: 0,
mood_joy: "0.0",
mood_sadness: "0.0",
mood_surprised: "0.0",
mood_disgusted: "0.0",
mood_anger: "1.0",
_version_: 1454285708574326800
},
{

Есть ли способ подсчитать каждое слово в предложении, используя фасет "Иду в Нью-Йорк пообедать с братаном, потому что у меня слишком много времени между ними!!"?
Например, имея результаты Going =1 Nyp =1 обед =1 и тоже без учета знаков препинания?


person user3571183    schedule 25.04.2014    source источник


Ответы (1)


Извлеките text из dict, используя:

name_of_dict['text'][0]

Это извлечет предложение:

Going NYP to have lunch with bro because I got too much time in between!!!

Чтобы игнорировать любые знаки препинания, вы можете использовать такую ​​функцию, как .replace(), через:

str = "Going NYP to have lunch with bro because I got too much time in between!!!";
print str.replace("!", "");
>>> Going NYP to have lunch with bro because I got too much time in between

Наконец, я отсылаю вас к этому сообщению для подсчета появления в строке:

Эффективно вычислять частоту слов в строке

Для которого жизнеспособным решением является:

from collections import Counter

test = 'abc def abc def zzz zzz'
Counter(test.split()).most_common()
[('abc', 2), ('zzz', 2), ('def', 2)]
person Matt Stokes    schedule 25.04.2014
comment
где вы добавляете это в документ solr? или есть ли какие-либо запросы, которые можно запустить? - person user3571183; 25.04.2014