2017-02-15 3 views
0

Я пытаюсь извлечь полярность настроений для просмотра фильма, поэтому для этого из помеченного текста (используя treetagger) я хотел бы извлечь все биграммы, которые имеют теги (ADV-VER: pper) или (VER: pres - ADJ). Например, в приведенном ниже примере список извлеченных фраз: bien suivi, est efficace.фразы извлечения с помощью R

Не могли бы вы помочь?

спасибо заранее

Database <- read.table("exp.txt", header = FALSE) 
Database 



      V1  V2   V3 

1  Toujours  ADV toujours 
2   bien  ADV  bien 
3  suivi VER:pper  suivre 
4   par  PRP  par 
5   mon DET:POS  mon 
6 conseiller  NOM conseiller 
7   Bon  NAM <unknown> 
8  accueil  NOM accueil 
9   ,  PUN   , 
10   ma DET:POS  mon 
11 conseillère  NOM conseiller 
12   est VER:pres  être 
13 efficace  ADJ efficace 
14   et  KON   et 
15   à  PRP   à 
16   l' DET:ART   le 
17  écoute  NOM  écoute 
18   .     
+3

Я думаю, что у вас есть что-то вроде следующего. 'df <- data.frame (a = rep (c (" a "," b "," c "), 3), b = 1: 9)', 'df [df $ a% в% c (" б», "в"),]'. Я предлагаю вам потратить некоторое время, чтобы узнать R. – DJJ

+0

@ DJJ Хорошо спасибо, конечно, я сделаю :) – Poisson

ответ

1

Мы можем использовать dplyr сделать то, что вам нужно:

library(dplyr) 

Database %>% 
    mutate(NV1 = lead(V1), NV2 = lead(V2)) %>% 
    filter((V2 == 'ADV' & NV2 == 'VER:pper') | (V2 == 'VER:pres' & NV2 == 'ADJ')) %>% 
    transmute(result = paste(V1, NV1)) 

#  result 
# bien suivi 
# est efficace 

Обратите внимание, что это не очень масштабируемым, как вы должны ввести любое условие, которое нужно, но что-то для начала и может удовлетворить ваши потребности

+0

Он работает, спасибо большое GGamba :) – Poisson

+0

можно ли сохранить результат в переменной? – Poisson

+1

уверен, просто добавьте '-> result' в конце – GGamba

Смежные вопросы