2017-03-17 4 views
0

Je réussis obtenir le texte de la publication et partager et aime compte.Extraction de poste de Facebook en utilisant RFacebook package

Cependant, je ne suis pas en mesure d'obtenir les mêmes commentaires associés à la publication. Si cette information n'est pas disponible, je voudrais fusionner le nombre similaire du message à chaque commentaire. Exemple: Un article reçoit 900 J'aime et 80 commentaires. Je voudrais associer les 900 valeurs de j'aime à chacun des commentaires (une nouvelle colonne appelée peut-être). Je voudrais utiliser cette information pour effectuer une analyse de sentiment en utilisant le nombre de j'aime (complexe comme (haha haha, triste ...)) dans une régression logistique avec la fréquence des mots les plus fréquents comme la variable x .

est mon script ici jusqu'à présent:

token<- "**ur token , get it at https://developers.facebook.com/tools/explorer/**" 

# Function to download the comments 
download.post <- function(i, refetch=FALSE, path=".") { 
post <- getPost(post=fb_page$id[i], comments = TRUE, likes = TRUE, token=token) 
post1<- as.data.frame(melt(post)) 
} 
#----------------------- Request posts --- ALL 
# Get post for ALL 
fb_page<- getPage(page="**the page number u want**", token=token, since='2010/01/01', until='2016/01/01', n= 10000, reactions=TRUE) 
fb_page$order <- 1:nrow(fb_page) 

# Apply function to download comments 
files<-data.frame(melt(lapply(fb_page$order, download.post))) 

# Select only comments 
files_c<-files[complete.cases(files$message),] 

Donc, fondamentalement, je reçois la page avec l'ID de poste et créer une fonction pour obtenir le poste de l'ID de poste sur cette page.

output for head(files_c

Comme vous pouvez le voir, je reçois toutes les informations dont j'ai besoin BESIDE les goûts et le nombre d'actions.

J'espère que je suis clair, merci beaucoup pour vous aider à

Répondre

1

Il est tout ce qu'il ya:

library(Rfacebook) 
token <- "#############" # https://developers.facebook.com/tools/explorer 
fb_page <- getPage(page="europeanparliament", token=token, n = 3) 
transform(
    fb_page[,c("message", "likes_count", "comments_count", "shares_count")], 
    message = sapply(message, toString, width=30) 
) 
#       message likes_count comments_count shares_count 
# 1 This week members called o....   92    73   21 
# 2 Today we're all Irish, bea....   673   133   71 
# 3 European citizens will mee....  1280   479   71 

packageVersion("Rfacebook") 
# [1] ‘0.6.12’ 
+0

Merci pour votre réponse. Je me demandais si je pouvais obtenir la même chose mais en incluant le texte du commentaire? Je veux avoir pour chaque poste le même et le partage et aussi une liste du texte du commentaire afin que je puisse saisir le texte dans ces commentaires obtenir les mots les plus fréquents et voir comment cela correspond à la même chose .. Je ne sais pas si je suis clair –

+0

Comme vous pouvez le voir, la fonction download.post .... en fait télécharger le commentaire sur le poste –

+1

Je ne comprends pas votre question, car un.) Ma réponse montre comment vous obtenez les goûts et les actions comptent et b.) vous savez que 'getPost' vous donne les commentaires pour chaque message. a + b est ce dont vous avez besoin, n'est-ce pas? – lukeA