2016-04-07 23 views
1

我正在嘗試閱讀.csv文件來自Airbnb的巴塞羅那詳細評論數據頁面,http://insideairbnb.com/get-the-data.html如何讀取含有大量逗號的變量「comments」的CSV?

但問題是,有一個變量專用於來自人的評論,並且有很多逗號,所以當我嘗試讀取.csv時,它會完全失真。我會感謝一些幫助!

非常感謝!

+0

'read.csv('reviews.csv')'對我來說工作得很好,你實際使用了什麼代碼?評論用引號括起來,所以裏面的逗號他們沒關係 – rawr

回答

1

您可以使用FREAD()data.table包,使用SEP2參數。

從文檔:

SEP2:柱內的分離器。

我試了一下阿姆斯特丹的數據,它工作得很好。它引發了一個警告,但這是由於fread是由data.table開發人員編寫的。

DT = fread(".../location/reviews.csv", sep2=",") 
nrow(DT) #returns 163351 (which seems to be the correct number) 
head(DT$comments,1) 

回報:

[1]「房間很小,但很舒適的地方是很乾淨,但牀單本來可以更清潔公寓是裝飾精美,剛好位於20。從市中心走幾分鐘就到了,所以對我們來說非常方便,但是我們在一個晚上有一段很不愉快的經歷,因爲他們決定在星期四晚上舉行派對,一直持續到凌晨5:30。非常瘦,我們可以整夜聽到他們的音樂和對話,人們也整晚都在抽菸,所以香菸的味道讓我們無法忍受,因爲我們不是sm工作人員和我們房間裏的氣味非常強烈。 Cedaria是事情在城市看到的前手給我們的提示非常有用的,但是如果我們知道,我們將不得不那樣的,我們會留在其他地方的經驗「。

僅供參考,FREAD和data.table是超級快的,我喜歡使用這個包。

+0

非常感謝你!它完美的工作!我會記住這個包,它真的很有用! – adrian1121

+2

我不認爲'sep2'已經實現,是嗎? –

+0

我不認爲它以文檔描述的方式實現不會返回一列字符串列表。我只知道我以前用它來達到這些目的,並且它工作正常。 –