- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试处理日语的 UTF8 编码文件。
我在 python 中进行了预处理,一切顺利(标记化/搭配/停用词),并且我获得了以下类型的字符串:
リカーショップ 寄っ たら サントリー 山崎 響が 入荷_し て た
但是,当我尝试在 R 中读取预处理文件(UTF-8 编码的 csv)以运行 STM 时,我得到以下格式:
<U+30AB><U+30F4><U+30A1> <U+4E00><U+676F> <U+767D> <U+8D64> <U+4E00><U+676F> <U+89D2>_<U+30CF><U+30A4><U+30DC><U+30FC><U+30EB> <U+5C71><U+5D0E> <U+30CF><U+30A4><U+30DC><U+30FC><U+30EB> <U+591A><U+304B><U+3063> <U+305F> <U+304B>
我首先尝试了不同的导入函数,但结果相同:
df <- read.xlsx2(corpus_filename,sheetIndex=1,header=TRUE)
df <-read_csv(corpus_filename,locale = locale(encoding = "UTF-8"))
然后我想我可以运行 stm 并返回到 python 重新编码生成的文件,但在尝试编码/解码功能半天之后,我不得不承认我完全陷入困境。
有人可以帮我解决这个问题吗?非常感谢。
编辑:这是我的 python 预处理的 csv 输出的前 20 行(以 utf8 编码)=> 这是我提供给 R 程序的文件
865781289361604609;コークハイ 山崎 年 酔っ払い なう
856448528331161600;リカーショップ 寄っ たら サントリー 山崎 響が 入荷_し て た
815926577556897792;おと なしく 山崎 んどき ます w まあ 竹鶴 結局 手 にいれ まし_た しよし ます w
769384649143361536;再 来週 山崎_蒸留 所 行く アド しか_ない
860119818296414208;非売 品 山崎 仕込_み 水 水割り 最高 です_ね
759768684457975809;ゴースト 観 た 面白 かっ_た ラスト 個人_的 驚い た 最高 だろ_う こういう 時期っ て 絶対 ある よね ラスト 切り 口 俺 好き 山崎 ハイボール うまし
807576715203444736;山崎 ロック う まいわぁ
833936664938500098;ある お店 飲み_放題 ウイスキー 以前 山崎 白州 ブラックニッカ 角 変わっ てる 大人 事情っ て やつ か
744757755177664512;父 日 サントリー 山崎 プレゼント しよ_う として 円 しか なかっ_た 竹鶴 あげ た
744850084580384768;今度 山崎 か 響買 おう
742576211759628288;i サントリー 山崎_蒸溜 所 島本_町 大阪府
862666125909278720;山崎 年 だねー 杯 ご_馳走 する_よ
865932271169159172;山崎 年 神々しい
788394825494175745;山崎 年 よき て
833282834412376064;山崎_蒸留 所見 学ツアー 千円 部 大阪 ダメダメ 団 向け テイスティング
823471399289253888;おと とい 山崎 年 ごち そう なっ たん_だけ どめっっっちゃ 美味_しく て 家 帰っ_て 調べ たら 定価 でも く らい する 知っ て ヒェッ て なっ た いつも 穏やか な 愛する あまり 相手 薬漬け 快楽 漬け て 全裸 首輪 つけ て 自室 監禁 て 泣き ながら 犯す 攻め 見 た 時 よう
775381740160299008;次買う ウイスキー 山崎 しよ_う とり_あえ ず 山崎 美味い だ
862137645895262209;山崎 シェリーカスク 一 回 飲ん_でみ たいけど 値段 ぶっ 飛ん て ヤヴァイ 年 万く らい とか な
741984119035334660;山崎 ハイボール なう
768400284754190337;久々_に 自覚 する くらい 酔っ ぱらっちゃっ た ぬ 山崎 ボトル 一本 飲ませ て 頂い た よ あり たい ね
839372940374237184;ウイスキー ある_けど 家 やつ 美味_しく ない ー 山崎 響き 好き
744138456025042944;山崎 ロック 飲み_ながら 妹ちょ 見る
779968612224217089;無駄 いい ホテル 笑知っ てる と_思う けど 山崎 響飲ん だ 翌日 体臭 おじ_さん なる ね 気 をつけ て
822126367584043008;山崎 でも いい ウイスキー 蒸留_所行 き たい
753358847352246272;山崎 年 のうえ 年
我在 Windows 7 下直接在 Rconsole 上工作,通过从 SublimeText 复制/粘贴行来实现。
编辑2:
我尝试了马克的建议:
> rm(list=ls(all=TRUE))
> library(readr)
> parselmouth.windows <-
+ read_delim(
+ parselmouth.csv,
+ ";",
+ escape_double = FALSE,
+ col_names = FALSE,
+ trim_ws = TRUE
+ )
Parsed with column specification:
cols(
X1 = col_double(),
X2 = col_character()
)
> names(parselmouth.windows) <- c('document', 'content')
> parselmouth.windows$document <- as.character(parselmouth.windows$document)
>
> print.listof(head(parselmouth.windows))
document :
[1] "865781289361604608" "856448528331161600" "815926577556897792"
[4] "769384649143361536" "860119818296414208" "759768684457975808"
content :
[1] "<U+30B3><U+30FC><U+30AF><U+30CF><U+30A4> <U+5C71><U+5D0E> <U+5E74> <U+9154>
<U+3063><U+6255><U+3044> <U+306A><U+3046>"
[2] "<U+30EA><U+30AB><U+30FC><U+30B7><U+30E7><U+30C3><U+30D7> <U+5BC4><U+3063> <
U+305F><U+3089> <U+30B5><U+30F3><U+30C8><U+30EA><U+30FC> <U+5C71><U+5D0E> <U+97F
F><U+304C> <U+5165><U+8377>_<U+3057> <U+3066> <U+305F>"
[3] "<U+304A><U+3068> <U+306A><U+3057><U+304F> <U+5C71><U+5D0E> <U+3093><U+3069>
<U+304D> <U+307E><U+3059> w <U+307E><U+3042> <U+7AF9><U+9DB4> <U+7D50><U+5C40> <
U+624B> <U+306B><U+3044><U+308C> <U+307E><U+3057>_<U+305F> <U+3057><U+3088><U+30
57> <U+307E><U+3059> w"
[4] "<U+518D> <U+6765><U+9031> <U+5C71><U+5D0E>_<U+84B8><U+7559> <U+6240> <U+884
C><U+304F> <U+30A2><U+30C9> <U+3057><U+304B>_<U+306A><U+3044>"
[5] "<U+975E><U+58F2> <U+54C1> <U+5C71><U+5D0E> <U+4ED5><U+8FBC>_<U+307F> <U+6C3
4> <U+6C34><U+5272><U+308A> <U+6700><U+9AD8> <U+3067><U+3059>_<U+306D>"
[6] "<U+30B4><U+30FC><U+30B9><U+30C8> <U+89B3> <U+305F> <U+9762><U+767D> <U+304B
><U+3063>_<U+305F> <U+30E9><U+30B9><U+30C8> <U+500B><U+4EBA>_<U+7684> <U+9A5A><U
+3044> <U+305F> <U+6700><U+9AD8> <U+3060><U+308D>_<U+3046> <U+3053><U+3046><U+30
44><U+3046> <U+6642><U+671F><U+3063> <U+3066> <U+7D76><U+5BFE> <U+3042><U+308B>
<U+3088><U+306D> <U+30E9><U+30B9><U+30C8> <U+5207><U+308A> <U+53E3> <U+4FFA> <U+
597D><U+304D> <U+5C71><U+5D0E> <U+30CF><U+30A4><U+30DC><U+30FC><U+30EB> <U+3046>
<U+307E><U+3057>"
最佳答案
对,我怀疑你使用的是 Windows。在 Linux(Ubuntu 16.04.2、RStudio 0.99.879、R 3.3.2)中,阅读和打印正常工作。
parselmouth.ubuntu <-
read.csv('parselmouth.csv', header = FALSE, sep = ";")
> head(parselmouth.ubuntu)
V1
1 8.657813e+17
2 8.564485e+17
3 8.159266e+17
4 7.693846e+17
5 8.601198e+17
6 7.597687e+17
V2
1 コークハイ 山崎 年 酔っ払い なう
2 リカーショップ 寄っ たら サントリー 山崎 響が 入荷_し て た
3 おと なしく 山崎 んどき ます w まあ 竹鶴 結局 手 にいれ まし_た しよし ます w
4 再 来週 山崎_蒸留 所 行く アド しか_ない
5 非売 品 山崎 仕込_み 水 水割り 最高 です_ね
6 ゴースト 観 た 面白 かっ_た ラスト 個人_的 驚い た 最高 だろ_う こういう 時期っ て 絶対 ある よね ラスト 切り 口 俺 好き 山崎 ハイボール うまし
>
我认为您会发现,在内部,R for Windows 确实“知道”数据的正确编码。它只是没有以我们期望或希望的方式打印。
我建议阅读http://people.fas.harvard.edu/~izahn/posts/reading-data-with-non-native-encoding-in-r/
尝试将示例数据保存为 parselmouth.csv
,安装 readr
库,然后运行
library(readr)
parselmouth.windows <-
read_delim(
"parselmouth.csv",
";",
escape_double = FALSE,
col_names = FALSE,
trim_ws = TRUE
)
names(parselmouth.windows) <- c('document', 'content')
parselmouth.windows$document <- as.character(parselmouth.windows$document)
print.listof(head(parselmouth.windows))
你会看到:
document :
[1] "865781289361604608" "856448528331161600" "815926577556897792"
[4] "769384649143361536" "860119818296414208" "759768684457975808"
content :
[1] "コークハイ 山崎 年 酔っ払い なう"
[2] "リカーショップ 寄っ たら サントリー 山崎 響が 入荷_し て た"
[3] "おと なしく 山崎 んどき ます w まあ 竹鶴 結局 手 にいれ まし_た しよし ます w"
[4] "再 来週 山崎_蒸留 所 行く アド しか_ない"
[5] "非売 品 山崎 仕込_み 水 水割り 最高 です_ね"
[6] "ゴースト 観 た 面白 かっ_た ラスト 個人_的 驚い た 最高 だろ_う こういう 時期っ て 絶対 ある よね ラスト 切り 口 俺 好き 山崎 ハイボール うまし"
如果仍然不满意,确定或设置当前区域设置可能会有所帮助。在我的 Windows 示例中,我使用默认的 Windows 代码页:
Sys.getlocale(category = "LC_ALL")
[1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
但我可以改变它
Sys.setlocale(category = "LC_ALL", locale = "English_United States.932")
[1] "LC_COLLATE=English_United States.932;LC_CTYPE=English_United States.932;LC_MONETARY=English_United States.932;LC_NUMERIC=C;LC_TIME=English_United States.932"
您还可以使用十六进制编辑器来验证您的输入是否与我的相同:
关于python - 对 UTF-8 编码的日语语料库进行 R 处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44357080/
我喜欢 smartcase,也喜欢 * 和 # 搜索命令。但我更希望 * 和 # 搜索命令区分大小写,而/和 ?搜索命令遵循 smartcase 启发式。 是否有隐藏在某个地方我还没有找到的设置?我宁
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 10年前关闭。 Improve this qu
从以下网站,我找到了执行java AD身份验证的代码。 http://java2db.com/jndi-ldap-programming/solution-to-sslhandshakeexcepti
似乎 melt 会使用 id 列和堆叠的测量变量 reshape 您的数据框,然后通过转换让您执行聚合。 ddply,从 plyr 包看起来非常相似..你给它一个数据框,几个用于分组的列变量和一个聚合
我的问题是关于 memcached。 Facebook 使用 memcached 作为其结构化数据的缓存,以减少用户的延迟。他们在 Linux 上使用 UDP 优化了 memcached 的性能。 h
在 Camel route ,我正在使用 exec 组件通过 grep 进行 curl ,但使用 ${HOSTNAME} 的 grep 无法正常工作,下面是我的 Camel 路线。请在这方面寻求帮助。
我正在尝试执行相当复杂的查询,在其中我可以排除与特定条件集匹配的项目。这是一个 super 简化的模型来解释我的困境: class Thing(models.Model) user = mod
我正在尝试执行相当复杂的查询,我可以在其中排除符合特定条件集的项目。这里有一个 super 简化的模型来解释我的困境: class Thing(models.Model) user = mod
我发现了很多嵌入/内容项目的旧方法,并且我遵循了在这里找到的最新方法(我假设):https://blog.angular-university.io/angular-ng-content/ 我正在尝试
我正在寻找如何使用 fastify-nextjs 启动 fastify-cli 的建议 我曾尝试将代码简单地添加到建议的位置,但它不起作用。 'use strict' const path = req
我正在尝试将振幅 js 与 React 和 Gatsby 集成。做 gatsby developer 时一切看起来都不错,因为它发生在浏览器中,但是当我尝试 gatsby build 时,我收到以下错
我试图避免过度执行空值检查,但同时我想在需要使代码健壮的时候进行空值检查。但有时我觉得它开始变得如此防御,因为我没有实现 API。然后我避免了一些空检查,但是当我开始单元测试时,它开始总是等待运行时异
尝试进行包含一些 NOT 的 Kibana 搜索,但获得包含 NOT 的结果,因此猜测我的语法不正确: "chocolate" AND "milk" AND NOT "cow" AND NOT "tr
我正在使用开源代码共享包在 iOS 中进行 facebook 集成,但收到错误“FT_Load_Glyph failed: glyph 65535: error 6”。我在另一台 mac 机器上尝试了
我正在尝试估计一个标准的 tobit 模型,该模型被审查为零。 变量是 因变量 : 幸福 自变量 : 城市(芝加哥,纽约), 性别(男,女), 就业(0=失业,1=就业), 工作类型(失业,蓝色,白色
我有一个像这样的项目布局 样本/ 一种/ 源/ 主要的/ java / java 资源/ .jpg 乙/ 源/ 主要的/ java / B.java 资源/ B.jpg 构建.gradle 设置.gr
如何循环遍历数组中的多个属性以及如何使用map函数将数组中的多个属性显示到网页 import React, { Component } from 'react'; import './App.css'
我有一个 JavaScript 函数,它进行 AJAX 调用以返回一些数据,该调用是在选择列表更改事件上触发的。 我尝试了多种方法来在等待时显示加载程序,因为它当前暂停了选择列表,从客户的 Angul
可能以前问过,但找不到。 我正在用以下形式写很多语句: if (bar.getFoo() != null) { this.foo = bar.getFoo(); } 我想到了三元运算符,但我认
我有一个表单,在将其发送到 PHP 之前我正在执行一些验证 JavaScript,验证后的 JavaScript 函数会发布用户在 中输入的文本。页面底部的标签;然而,此消息显示短暂,然后消失...
我是一名优秀的程序员,十分优秀!