我有一系列的单词,摘自对一家酒店的评论。 例如
array(['advantage', 'advice', 'anniversary', 'arrived', 'aveda', 'bangs',
'bath', 'bed', 'check', 'clean', 'closing', 'comfortable', 'deal',
'did', 'disappointed', 'distance', 'doors', 'easy', 'evening',
'existent', 'expensive', 'experience', 'goldfish', 'good', 'got',
'great', 'hallway', 'having', 'hear', 'heard', 'high', 'hotel',
'just', 'late', 'like', 'little', 'location', 'longer', 'loud',
'maybe', 'morning', 'music', 'neck', 'neighbors', 'nice', 'night',
'noisy', 'non', 'not', 'opening', 'overall', 'parking', 'pay',
'people', 'pillows', 'previous', 'products', 'quick', 'reviews',
'room', 'shopping', 'size', 'soundproof', 'stay', 'staying',
'stiff', 'taken', 'talking', 'took', 'touch', 'valet', 'view',
'walking', 'woke'], dtype='<U12')
然后我得到了该酒店在本次审查中的评级
e、 g在这种情况下,酒店获得了4颗星
我在大约2万篇评论中也有同样的评论
我想看看这些词和评论之间的关系
例如,有人可能会认为,与“脏”、“不喜欢”、“小”、“令人失望”的评论相比,带有“干净”、“很棒”、“喜欢”、“推荐”等词的评论会获得更高的星级
我试图用pandascorr
和corrwith
函数来处理这个问题,并使用NumPy来计算相关性,但我无法让它工作并产生良好的结果
我不是熊猫专家,但我可以提供一种可能的方法。 您可以创建一个dict,其中关键字是一个单词,value是与该单词相关的酒店星级列表。 让我们假设您的数据是一个dict列表,它表示酒店,并且至少有以下键:分数、单词。其中score-是酒店得分,words-您的words数据
现在每个单词都有分数,如下所示:
这取决于你如何解释它,但计算好/坏分数应该给你一个粗略的估计
corr
和corrwith
是为数字列设计的。出于您的目的,请查看:https://www.researchgate.net/post/Can_I_use_Pearsons_correlation_coefficient_to_know_the_relation_between_perception_and_gender_age_income/567f17ed61432567d88b45e8/citation/download
你需要想出一个代码,让每个单词从好到坏都有一个等级,从等级较低的好形容词开始,到等级较高的坏形容词。我将首先对它们进行排序,然后给它们一个数字代码,以反映一个单词的好坏请注意,并非所有单词都需要指定代码。在这种情况下,0就可以了。
我会从这样的事情开始
我会给你一本字典
一本字典比一份清单更容易操作。那么我会说,举例来说
等等。您必须手动执行此操作,或者提出某种编码算法。无论哪种方式,一旦你对单词进行了排名,你就可以使用non parametric correlationlikeSpearman's来找出你的相关系数
斯皮尔曼的相关系数不作任何假设,因为它只对值进行排序,然后使用排序计算相关性。另一方面,Pearson's假设变量为正态分布,我不建议在这种情况下使用它。
相关问题 更多 >
编程相关推荐