Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python rpy2:韩语字符不在rpy2上工作_Python_R_Rpy2 - Fatal编程技术网

Python rpy2:韩语字符不在rpy2上工作

Python rpy2:韩语字符不在rpy2上工作,python,r,rpy2,Python,R,Rpy2,python代码: import rpy2.robjects as robjects rCommand='''gender <- c("남자", "남자", "남자", "여자", "여자", "여자", "여자", "여자") age <- c(23, 25, 27, 29, 31, 33, 35, 37) outdf <- data.frame(gender, age) ''' robjects.r(rCommand) resultDf_r=robjects

python代码:

import rpy2.robjects as robjects

rCommand='''gender <- c("남자", "남자", "남자", "여자", "여자", "여자", "여자", "여자")
  age    <- c(23, 25, 27, 29, 31, 33, 35, 37)
  outdf <- data.frame(gender, age)
'''
robjects.r(rCommand)
resultDf_r=robjects.globalenv["outdf"]

print type(resultDf_r)
将rpy2.robject作为robject导入

rCommand=''性别在撰写本文时,不幸的是,没有官方支持windows的
rpy2
。您提供的代码片段在Linux上运行良好

您的选择可能是:

  • 在Linux虚拟机(或容器-MS已宣布支持Docker)中运行代码

  • 提交rpy2的修补程序

  • 在bitbucket页面上为
    rpy2
    提交一份bug报告,希望这能转化为某个人的补丁

Edit:这些评论表明,帮助Python2.7进行编码可能会有所帮助(没有承诺-一切都在Linux上运行,因此这可能是Windows特有的)。可以显式地将字符串指定为unicode格式(注意
'
之前的前缀
u
):

rCommand=u''

性别谢谢你的评论。现在我找到了旁路。1.R命令保存到script.R,2。我执行R命令=>source(“c:\\script.R”)它可以很好地使用韩文字符。source(“c:\\script.R”)==>source(“c:\\script.R”,encoding='UTF-8-BOM')我现在只看到您使用的是Python 2.7,而不是3.4。在使用Python时,几乎肯定需要指定编码。一般来说,切换到Python3.4(默认情况下是unicode)可能是个好主意。我不擅长用英语写作。谢谢你仔细的答复。(来自韩国首尔)
rCommand=u'''
    gender <- c("남자", "남자", "남자", "여자", "여자", "여자", "여자", "여자")
    age    <- c(23, 25, 27, 29, 31, 33, 35, 37)
    outdf <- data.frame(gender, age)
'''
robjects.r(rCommand)