I have a text file from amazon, containing the following info:
# user item time rating review text (the header is added by me for explanation, not in the text file
disjiad123 TYh23hs9 13160032 5 I love this phone as it is easy to use
hjf2329ccc TGjsk123 14423321 3 Suck restaurant
As you see, the data is separated by space and there are different number of columns in each row. However, so it is the text content. Here is the code I have tried:
pd.read_csv(filename, sep = " ", header = None, names = ["user","item","time","rating", "review"], usecols = ["user", "item", "rating"])#I'd like to skip the text review part
And such an error occurs:
ValueError: Passed header names mismatches usecols
When I tried to read all the columns:
pd.read_csv(filename, sep = " ", header = None)
And the error this time is:
Error tokenizing data. C error: Expected 229 fields in line 3, saw 320
And given the review text is so long in many rows , the method of adding header names for each column in this question can not work.
I wonder how to read the csv file if I want to keep the review text and skip them respectively. Thank you in advance!
EDIT:
The problem has been solved by Martin Evans perfectly. But now I am playing with another data set with similar but different format. Now the order of the data is converse:
# review text user item time rating (the header is added by me for explanation, not in the text file
I love this phone as it is easy to used isjiad123 TYh23hs9 13160032 5
Suck restaurant hjf2329ccc TGjsk123 14423321 3
Do you have any idea to read it properly? It would be appreciated for any help!