words = pseg.cut(text) ^ IndentationError: expected an indented block after function definition on line 6

动态 未结 0 151
小小草
小小草 LV1 2023年9月23日 23:40 发表
这个错误通常是因为函数定义的下一行没有缩进所致。请检查你的代码,确保在函数定义后面的第一行有正确的缩进。 在这个特定的错误中,第6行的代码之前可能没有正确的缩进。请尝试将第6行的代码缩进4个空格或一个制表符,以使其成为函数体的一部分。修改后的代码如下: import pandas as pd import jieba.posseg as pseg # 读取数据 data = pd.read_excel('华为.xlsx') # 定义函数,用于提取PROP和ADJ def extract_opinion(text): words = pseg.cut(text) prop_list = [] adj_list = [] for word, flag in words: if flag == 'prop': prop_list.append(word) elif flag == 'adj': adj_list.append(word) return prop_list, adj_list # 对每条评论进行观点提取,并将结果添加到新的列中 data[['PROP', 'ADJ']] = data['评价内容'].apply(lambda x: pd.Series(extract_opinion(x))) # 统计总条数和各自占比 total_count = len(data) positive_count = len(data[data['情感倾向'] == 'Positive']) neutral_count = len(data[data['情感倾向'] == 'Neutral']) negative_count = len(data[data['情感倾向'] == 'Negative']) positive_ratio = positive_count / total_count neutral_ratio = neutral_count / total_count negative_ratio = negative_count / total_count # 输出若干项抽取的PROP和ADJ print(data[['评价内容', 'PROP', 'ADJ']].head(10)) # 输出总条数和各自占比 print('总条数:', total_count) print('正向占比:', positive_ratio) print('中立占比:', neutral_ratio) print('负向占比:', negative_ratio) # 将结果保存到文件中 result = pd.DataFrame({'总条数': [total_count], '正向占比': [positive_ratio],
收藏(0)  分享
相关标签: 智能问答
问题没解决?让AI助手帮你作答 AI助手
0个回复
  • 消灭零回复