从 R 中的数据框中删除 Unicode 字符



我有一个包含波斯语字符的大型数据框,我使用以下代码将其导入r:

Sys.setlocale(locale = "persian")
dt <- read.csv("data.csv",encoding="UTF-8")

我的DT是这样的:

id         title
3376971    چوب شور آلبينا شيرين عسل <U+06F3><U+06F0> گرمي
3376989    ويفر رنگارنگ مينو <U+06F1><U+06F4>.<U+06F5> گرمي
3376990    کوکي مينو <U+06F3><U+06F0> گرمي
3376991    بيسکويت هاي باي شيرين عسل <U+06F3><U+06F8> گرمي
3376992    شکلات توريستي آناتا <U+06F2><U+06F8> گرمي
3376993    اسنک مغزدار شکلاتي شونيز <U+06F1><U+06F7> گرمي
3376994    شکلات فندقي آناتا <U+06F1><U+06F8> گرمي
3376995    نان روغني شيرين عسل <U+06F5><U+06F0> گرمي
3376996    بيسکويت هاي باي شيرين عسل <U+06F5><U+06F7> گرمي
我想

删除一些 unicode,我已经尝试过:

dt<- cbind.data.frame(dt$id,gsub("<.+>", "", dt$title)
dt<- cbind.data.frame(dt$id,gsub("\S+\s+|-", "", dt$title)
dt<- cbind.data.frame(dt$id,gsub("^\s*<U\+\w+>\s*", "", dt$title)
dt<- cbind.data.frame(dt$id,gsub("\<U[^\>]*\>", "", dt$title)  
dt<- cbind.data.frame(dt$id,gsub(""▼|▲"", "", dt$title)  

但他们都不起作用

我也试过这个:

dt$title<-gsub("^\s*<U\+\w+>\s*", "", dt$title)

但是我收到此错误:

Error in `$<-.data.frame`(`*tmp*`, title, value = character(0)) : 
replacement has 0 rows, data has 66366

我注意到在 R 控制台中,我的数据显示如下:

چوب شور آلبینا شیرین عسل ۳۰ گرمی

Unicode 显示为波斯数字,我尝试了这个并且它起作用了:

dt$title<-gsub("[۰-۹]+", "", dt$title)

最新更新