当前位置: 首页 > 知识库问答 >
问题:

如何将情感分类器应用到数据框[副本]

左丘成仁
2023-03-14

我有一个包含调查答案的数据框架。其中三列是开放式答案。使用HuggingFace NLP,我使用一个预先训练的情绪分析分类器。请查找以下代码:

from transformers import AutoTokenizer, AutoModelForSequenceClassification, pipeline
model_name = "nlptown/bert-base-multilingual-uncased-sentiment"
model = AutoModelForSequenceClassification.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)
classifier = pipeline('sentiment-analysis', model=model, tokenizer=tokenizer)
classifier("This community is so helpful!")

分类器测试的结果是:“[{'label':'5stars','score':0.800311}]

我想做的是让分类器在我的开放式响应上运行,并且在我的数据框架的新列中,让它包括星星和排名分数。

任何帮助将不胜感激。

编辑:我通过本地csv上传了数据集。我想使用的数据框列名是"Q72"

共有1个答案

壤驷阳冰
2023-03-14

在列上应用模型,并使用分配函数创建另一列:

df = (
    df
    .assign(sentiment = lambda x: x['Q72'].apply(lambda s: classifier(s)))
    .assign(
         label = lambda x: x['sentiment'].apply(lambda s: (s[0]['label'])),
         score = lambda x: x['sentiment'].apply(lambda s: (s[0]['score']))
    )
)
 类似资料:
  • 我在下面有一个函数来计算一个月有多少天 这个返回29 我的问题是,现在我有一个包含100(年、月)的数据帧 2012,2 2012,3 2013,1 2016,7 2015年4月 ... 我已经将数据帧定义为df['Year']和df['Month'],当我将这两个元素插入函数时 它告诉我ValueError:一个系列的真值是模糊的。使用a.empty、a.bool()、a.item()、a.an

  • 与 TF-IDF + LogReg 之类的简单且快得多的方法相比,LSTM 实际上由于数据集太小而无济于事。 注意 RNN 非常棘手。批次大小、损失和优化器的选择很重要,等等。某些配置无法收敛。 训练期间的 LSTM 损失减少模式可能与你在 CNN/MLP 等中看到的完全不同。 from __future__ import print_function from keras.preprocess

  • 我是新的使用烧瓶或JS,因为,我找不到一个方法来做我想做的。我使用flask(在python中)创建了一个webserver,它使用index.html作为主页面,我希望每隔几秒(可能1-3秒)更新一次服务器数据。问题是,我没有任何形式可以使用,甚至没有查询,我不知道还可以使用什么。我想发送的数据是小字符串,稍后将保存在服务器主机上。

  • 2 个轮次后达到 0.8498 的测试精度。K520 GPU 上为 41 秒/轮次。 from __future__ import print_function from keras.preprocessing import sequence from keras.models import Sequential from keras.layers import Dense, Dropout,

  • 我是新来的反应本地人。我需要,如何推setState数组到新的数据?