我正在尝试使用rpy2在Python(2.7)中编写R函数,并且我在R factorwars中有一个函数可以保存包含字符串' reg'的方法中每个元素的索引。 / p>
from rpy2.robjects import r, pandas2ri
import rpy2.robjects as rob
import pandas as pd
pandas2ri.activate()
rstring="""
function(methods){
factorvars=which(methods %in% 'reg')
}
"""
rfunc=rob.r(rstring)
new_data=rfunc(methods)
rstring实际上有点长,我尝试过使用'%sin%'字符串后面的%%以及%中的\%,但Python会将其解释为%i并要求输入整数。关于我如何在Python中以%为单位转义%或在R中用%编写类似函数的任何想法。
编辑:包含更多代码,导入和功能。很多问题是当我更改代码时,R代码将是错误的。 this_is_only_string的任何python函数('某些字符串')都会覆盖格式化?
<%> %%中的%%会显示错误消息: <text>:9:41: unexpected 'in'
8: fact = c('polyreg', 'logreg')
9: factorvars=which(method_array %%in
答案 0 :(得分:0)
如果%
被解释为printf
样式指令,请尝试将%符号加倍:%%in%%
答案 1 :(得分:0)
一切似乎都在为此目的而努力:
dictionary_of_dictionaries = {
'RandomUserName': {'6/30/15': 2},
'AnotherRandomUserName': {'5/25/16': 8},
'AThirdRandomUserName': {'1/12/15': 5}
}
flattened = [(k,) + tuple(dic.iteritems()) for k, dic in dictionary_of_dictionaries.iteritems()]
print flattened