主要内容

分析包含表情符号的文本数据

此示例演示如何分析包含表情符号的文本数据。

表情符号是在文本中内联显示的图形符号。在智能手机和平板电脑等移动设备上书写文字时,人们使用表情符号来保持文字简短,并传达情感和感受。

您还可以使用表情符号来分析文本数据。例如,使用表情符号来识别相关的文本字符串,或者可视化文本的情感。

使用文本数据时,表情符号的行为可能不可预测。根据您的系统字体,您的系统可能无法正确显示某些表情符号。因此,如果表情符号显示不正确,则数据不一定会丢失。您的系统可能无法以当前字体显示表情符号。

创作表情符号

在大多数情况下,您可以从文件中读取表情符号(例如,使用提取文件文本,提取HtmlText可读)或者直接复制并粘贴到MATLAB®。否则,您必须使用Unicode UTF16代码单元组合表情符号。

一些表情符号由多个Unicode UTF16代码单元组成。例如,“带墨镜的笑脸”表情符号(代码点为U+1F60E)是一个符号符号,但包含两个UTF16代码单元“D83D”“DE0E”。使用创建包含此表情符号的字符串组成函数,并使用前缀指定两个代码单位“\x”.

表情符号(“\xD83D\xDE0E”)
表情符号=“”

首先获取表情符号的Unicode UTF16代码单位。使用烧焦要获取表情符号的数字表示形式,请使用十二进制获取相应的十六进制值。

codeUnits=dec2hex(字符(表情符号))
代码单位=2×4字符数组“D83D”“DE0E”

使用strjoin具有空分隔符的函数"".

formatSpec=strjoin(“\x”+代码单位,"")
formatSpec=“\xD83D\xDE0E”
表情符号=组合(formatSpec)
表情符号=“”

导入文本数据

提取文件中的文本数据weekendUpdates.xlsx使用可读.档案weekendUpdates.xlsx包含包含哈希标记的状态更新“周末”“#假期”.

文件名=“weekendUpdates.xlsx”;tbl=可读(文件名,“文本类型”,“字符串”);负责人(待定)
ans=8×2表ID TextData\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu1周年快乐!❤ 下一站:巴黎!✈ #假期“2”哈哈,海滩烧烤,搞自鸣得意模式!❤  #假期“3”为周六晚上做好准备#百胜#周末“4”跟我说吧-我需要一个#假期!!!☹" 5“多年来第一次在家里发冷……这就是生活!#周末”6“考试前的最后一个周末”。7“不敢相信我的假期结束了,太不公平了”8“迫不及待地想在这个周末打网球”

从字段中提取文本数据文本数据并查看前几个状态更新。

textData=tbl.textData;textData(1:5)
ans=5×1串“周年快乐!❤ 下一站:巴黎!✈ #假期“哈哈,在海滩上烧烤,玩自鸣得意的模式!❤  #假期“准备周六晚上的假期”#嗯#周末”#跟我说-我需要一个#假期!!!☹“多年来第一次在家里寒冷……这就是生活!#周末”

将文本数据可视化到word cloud中。

图wordcloud(文本数据);

通过表情符号过滤文本数据

使用识别包含特定表情符号的状态更新包含功能。查找包含“带墨镜的笑脸”表情符号(代码为U+1F60E)的文档索引。此表情符号由两个Unicode UTF16代码单元组成“D83D”及"DE0E“.

表情符号(“\xD83D\xDE0E”);idx=contains(textData,emoji);textdasunglasses=textData(idx);textdasunglasses(1:5)
ans=5×1串“哈哈,海滩烧烤,自鸣得意!❤  #假期“为周六晚上做好准备”百胜“周末”多年来第一次在家里寒意…这就是生活!“周末”看看办公室外的工作人员,我们正式开始休假!!“天气这么好的时候谁需要休假☀ "

在单词云中可视化提取的文本数据。

figure wordcloud(textDataSunglasses);

提取并可视化表情符号

使用单词云可视化文本数据中的所有表情。

提取表情符号。首先使用标记化文档,然后查看前几个文档。

文档=标记化文档(textData);文档(1:5)
ans=5×1标记文档:11个标记:周年快乐!❤ 下一站:巴黎!✈ #假期16代币:哈哈,海滩烧烤,玩自鸣得意模式!❤  #假期9代币:为周六晚上做好准备#百胜#周末13代币:跟我说-我需要一个#假期!☹ 19个代币:多年来第一次在家里寒冷……这就是生活!#周末

这个标记化文档函数自动检测表情符号并指定标记类型“表情符号”。使用查看文档的前几个令牌详细信息令牌详细信息作用

tdetails=标记详细信息(文档);标题(tdetails)
ans=8×5表令牌文档编号行号类型语言(uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu❤" 1 1表情符号en“下一个”11字母en“停止”11字母en:“1 1标点符号en“巴黎”11字母en

通过提取token类型的标记,将单词云中的表情可视化“表情符号”并将其输入到wordcloud作用

idx=tdetails.Type==“表情符号”;tokens=tdetails.Token(idx);figure wordcloud(tokens);title(“表情符号”)

另见

||

相关话题