ZXZ19970809 2023-03-25 16:25 采纳率: 100%
浏览 11
已结题

遍历每条评论,根据关键词进行权重相加

1、使用TF-IDF算法提取到关键词并获得权重;
2、将关键词进行分类,分了8大类;
3、每类中包含几个关键词并附带权重;
问题:如何遍历每条评论分别计算8类的总权重,并导入到excel表格?
表格表头为:评论——类1权重和——类2权重和——

  • 写回答

1条回答 默认 最新

  • IT_service_mesh 2023-03-25 16:40
    关注

    参考GPT和自己的思路:为遍历每条评论,根据关键词进行权重相加并导入到excel表格,你可以按照以下步骤进行操作:

    1. 首先,你需要使用TF-IDF算法从每条评论中提取出关键词,并计算出这些关键词的权重。

    2. 将提取出的关键词进行分类,将它们分为8大类。你可以自行定义每个类别的关键词,并将它们存储为一个字典。

    3. 编写一个函数,将每一类的关键词及其权重存储在一个字典中,并将这个字典嵌套在一个列表中。这样,你可以很方便地对每一类关键词的权重进行累加。

    4. 对每条评论进行遍历,将评论中的关键词与你事先定义好的关键词分类列表进行匹配。如果该关键词属于某个类别,将其权重添加到该类别的权重和中。

    5. 为每条评论记录在表格中的8类权重和,你可以定义一个空的字典或列表,每当遍历一条评论时,将该评论的8类权重和记录在这个字典或列表中。当所有评论都处理完毕后,你可以将这些记录导入到excel表格中。

    下面是一个简单的Python代码示例,它实现了上述步骤中的某些操作。

    import pandas as pd
    import numpy as np
    from sklearn.feature_extraction.text import TfidfVectorizer
    
    # 评论数据集合
    text_data = [
        '这个电影很好看。',
        '这部电影太过无聊了。',
        '导演的表现非常出色。',
        '这个演员的表演令人印象深刻。',
    ]
    
    # 定义关键词和类别
    category_keywords = {
        '类别1': ['电影', '导演', '演员'],
        '类别2': ['好看', '出色', '印象深刻'],
        # ... 其他类别
    }
    
    # 定义每一类别的关键词及其权重
    category_weights = [
        {'关键词1': 0.1, '关键词2': 0.2},
        {'关键词3': 0.3, '关键词4': 0.4},
        # ... 其他类别
    ]
    
    # 提取关键词并计算权重
    tf_idf = TfidfVectorizer(stop_words='english')
    features = tf_idf.fit_transform(text_data)
    vocabulary = tf_idf.vocabulary_
    weights = features.todense()
    
    # 遍历每条评论,计算8类的总权重,并将结果记录在字典中
    results = []
    for i in range(len(text_data)):
        class_weights = np.zeros(len(category_weights))
        for k, v in vocabulary.items():
            if k in category_keywords['类别1']:
                class_weights[0] += weights[i, v] * category_weights[0][k]
            elif k in category_keywords['类别2']:
                class_weights[1] += weights[i, v] * category_weights[1][k]
            # ... 其他类别
        results.append({'评论': text_data[i], '类1权重和': class_weights[0], '类2权重和': class_weights[1], ...})
    
    # 将结果导入到excel表格中
    df = pd.DataFrame(results)
    df.to_excel('results.xlsx')
    

    请根据实际需求进行修改和优化。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月3日
  • 已采纳回答 3月26日
  • 创建了问题 3月25日

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测