我正在使用 qdap 包进行极性分析。在 CSV 文件中,我有一个没有标点符号的句子,例如“糟糕到不可移除”(没有句号)。
在数据帧上使用 sentsplit
后,该行显示 NA。
如何在 R 中为不完整的句子添加结束标记?有办法阻止这种情况吗?
最佳答案
许多 qdap
函数都需要正确格式化/结构化的数据形式。这通常意味着带有尾标的句子,并且通常每行只有一个句子。这就是算法确定什么是句子的方式。如果句子确实是不完整的句子 qdap
需要管道符号“|”来表示这一点。因此,这是一个使用 end_mark
函数检测丢失的结束标记,然后在末尾粘贴 |
的示例:
dat <- DATA
dat[1, 4] <- "Sucks to not be removable"
missing <- end_mark(dat[["state"]]) == "_"
dat[["state"]][missing] <- paste0(dat[["state"]][missing], "|")
sentSplit(dat, "state")
## person tot sex adult code state
## 1 sam 1.1 m 0 K1 Sucks to not be removable|
## 2 greg 2.1 m 0 K2 No it's not, it's dumb.
## 3 teacher 3.1 m 1 K3 What should we do?
## 4 sam 4.1 m 0 K4 You liar, it stinks!
## 5 greg 5.1 m 0 K5 I am telling the truth!
## 6 sally 6.1 f 0 K6 How can we be certain?
## 7 greg 7.1 m 0 K7 There is no way.
## 8 sam 8.1 m 0 K8 I distrust you.
## 9 sally 9.1 f 0 K9 What are you talking about?
## 10 researcher 10.1 f 1 K10 Shall we move on?
## 11 researcher 10.2 f 1 K10 Good then.
## 12 greg 11.1 m 0 K11 I'm hungry.
## 13 greg 11.2 m 0 K11 Let's eat.
## 14 greg 11.3 m 0 K11 You already?
顺便说一句,qdap
的开发版本(版本 >= 2.1.1)包含一行新的数据格式化函数,包括 check_text
自动检查潜在的格式问题并打印一份报告,提供潜在问题的位置和可能的修复方法。
关于r - 当没有结束标记时,qdap 中的 sentSplit() 会出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24875974/