2016-02-25 62 views
0

我正在使用RFatest軟件包,並且遇到輸出問題。嘗試使用該軟件包爲每個喜歡帖子的人颳去一個頁面。我可以使用for循環來創建數據框,但是輸出看起來很奇怪,我想知道是否有人可以幫助我以不同的方式進行格式化。來自RFatest的R輸出

這裏是我的代碼

post1<- "" 
for (i in page$id){ 
    post<- getPost(i, token, n = 1000, 
       likes = TRUE, comments = FALSE) 
    liker <- as.list(post$likes[1]) 
    post1 <- rbind(post1,liker) 
} 

這裏的數據幀導致

Data Frame

最終的目標在這裏是創建具有人的名字一個框架,在它的旁邊會他們喜歡的帖子數量。這部分將是相當容易的,因爲我可以檢查名字是多少次他們發現,但我不能這樣做與當前格式的幀中。提前

感謝。

回答

0

根據對rFacebook文檔,getPost函數獲取返回三件事;帖子,評論數據框,以及喜歡的數據框。

getPost返回一個包含三個組件的列表:post,likes和comments。首先,文章包含有關職位 信息:作者,創建日期,ID,喜歡的,評論和分享計數等 二,喜歡的是,包含了所有喜歡 的用戶名和Facebook ID的數據幀帖子。最後,評論是有關的評論的帖子信息(作者, 消息,創建時間,ID)

在你的函數可以訪問喜歡的數據幀liker <- as.list(post$likes[1])數據幀,但只採取的第一個元素大概是2d數據幀。您正在查找的數據可能在post$likes$from_name

+0

發現這樣會產生有趣的結果。是的,它產生一個乾淨的數據幀,但我得到錯誤,並且許多名稱被甩離誤差爲「:在rbind(POST1,類似器): 數結果的列是不向量長度的整數倍(ARG 2 )「 – user1582969

+0

那是因爲'liker'向量是可變長度的,而你試圖綁定的數據幀有一定數量的列。這就是爲什麼我建議將數據幀綁定在一起,以便每個'liker'都有一行,或者您可以將它們存儲爲矢量'post1 < - c(post1,liker)' – user5219763

+0

非常感謝。這是完美的 – user1582969