如何使用 excel 捕获所有大写单词进行文本分析?

问题描述 投票:0回答:2

我目前正在处理一个基于人们评论的大型数据集。该数据集包括 25000 个人对不同书籍的评论,文本列上的每一行都是唯一的,并且有很多句子。

我的问题是我想对文本是否包含所有大写单词进行编码。例如,有人会说:“这本书太棒了!我喜欢它!”通常情况下,excel 允许您直接识别单元格何时完全全部大写,但这种情况比这更独特,因为我希望能够看到文本中的任何单词是否全部大写。任何建议将不胜感激。

我搜索了可能的解决方案,并询问了 ChatGPT3.5 和 GPT4。结果没有给我一个可实施的建议(GPT 给出的代码太长,excel 无法执行,而它给出的较短的代码显然是错误的)

excel analysis textual
2个回答
0
投票

假设您可以将数据放入 Excel 中的表格中,您可以使用 PowerQuery 非常轻松地完成此操作,使用一些虚拟数据,如下所示。

选择表格中的一个单元格,然后转到数据 => 获取和转换数据 => 从表中获取数据

这将加载 Power Query 编辑器,如果您转到添加列 => 自定义列并输入以下内容,它将添加一个 True/False 列,指示每行是否有任何大写单词

然后转到文件=>关闭并加载到...

并选择将其加载到新工作表或现有工作表上的表格中,它会为您提供数据

HasCaps 代码的工作原理是在每个空格“”处拆分文本列并创建一个列表,然后检查该列表中的每个项目是否在大写时相同,然后检查列表中是否有任何“真” .


0
投票

您可以尝试以下操作,假设您的输入数据在单元格中

A1

=LET(s,TEXTSPLIT(A1," "),FILTER(s,EXACT(s, UPPER(s))))

它产生以下输出:

它通过

 
分隔符识别单词,然后使用
EXACT
函数进行区分大小写的比较。请记住,如果您有
AMAZING01
,它也会认为这种情况有效。如果你想检查条件而不是返回大写单词,那么:

=LET(s,TEXTSPLIT(A1," "),f, FILTER(s, EXACT(s, UPPER(s)),""), IF(@f="", FALSE, TRUE)
© www.soinside.com 2019 - 2024. All rights reserved.