我将CSV文件解析为Dataframe。 10,000条记录进入,没有问题。 两列一个' ID',一个'评论'。
我尝试将DF转换为字典,其中键=' ID'和值='评论'。
由于某种原因,新词典只包含680条记录。
#read csv data file
data = pd.read_csv("Movie_reviews.csv",
delimiter='\t',
header=None,names=['ID','Reviews'])
reviews = data.set_index('ID').to_dict().get('Reviews')
len(reviews)
输出为680
如果我没有追加' .get(' Reviews')'一切都是一个伟大的记录。
Dataframe'数据'看起来像这样
ID Reviews
1 076780192X it always amazes me how people can rate the DV...
2 0767821599 This movie is okay, but, its not worth what th...
3 0782008380 If you love the Highlander 1 movie and the ser...
4 0767726227 This is a great classic collection, if you lik...
5 0780621832 This is the second of John Ford and John Wayne...
6 0310263662 I am an evangelical Christian who believes in ...
7 0767809270 Federal law, in one of its numerous unfunded m...
答案 0 :(得分:0)
我认为你可以做到:
方法1:
reviews = data.set_index('ID')['Reviews'].to_dict()
方法2:我们在此处将评论转换为每个ID的列表,以便我们不会丢失任何信息。
reviews = data.groupby('ID')['Reviews'].apply(list).to_dict()
答案 1 :(得分:0)
如果它可以帮助其他人。
电影评论的ID并非都是独一无二的。 .nunique()函数显示了@YOLO的建议。
仅将值(评论)分配给字典会自动添加@JackHoman建议解决我的问题的唯一键。