2013-01-16 5 views
5

RMagic、IPythonとサマリ情報

http://www.randalolson.com/2013/01/14/filling-in-pythons-gaps-in-statistics-packages-with-rmagic/

私はIPythonのノートに、ここで見られる異なるデータセットに同じことを試してみました。

https://github.com/burakbayramli/kod/blob/master/delltest/dell.tgz

from pandas import * 
orders = read_csv("dell.csv",sep=",") 
%load_ext rmagic 
%R -i orders print(summary(orders)) 

私は

data <- read.csv ("dell.csv",header=TRUE,sep=",") 
print (summary(data)) 

R

で同じことが私に正しい要約情報を提供しますしかし

 Length Class Mode 
[1,] 25  -none- list 
[2,] 25  -none- list 
[3,] 25  -none- list 
.. 

を取得します。

 rank  per_customer_count total_total_amount orderid  
Min. : 1.000 Min. : 1.000  Min. : 0.14 Min. : 1 
1st Qu.: 2.000 1st Qu.: 6.000  1st Qu.: 866.11 1st Qu.: 2964 
Median : 4.000 Median : 8.000  Median : 1764.08 Median : 5980 
Mean : 4.997 Mean : 9.426  Mean : 2004.95 Mean : 5987 
3rd Qu.: 7.000 3rd Qu.:12.000  3rd Qu.: 2856.06 3rd Qu.: 9004 
... 

+0

、それはR行列にパンダのデータフレームを変換しています:

一方

、あなたは以下のコードスニペットから進行するために必要なもの調理することができるはずですRデータフレーム。これを改善すべきです。 –

+0

@ Thomas-K:それは(リストの)リストのリストに変換されているようでした。私たちはipythonの開発サイト(rpy2のサイトよりも理にかなっています)でrmagicが使用している変換ルールの改良に取り組むべきです。 – lgautier

+0

私はipythonのGHページで問題を作成しました - https://github.com/ipython/ipython/issues/2797 – user423805

答えて

2

ipythonの魔法 が変換権を得ていない状況がいくつかあります。私はrmagicと より多くの魔法に関してそれらに連絡を取らなければならない。のではなく、

推測として
import pandas 
orders = pandas.read_csv("dell.csv", sep=",") 
%load_ext rmagic 

import rpy2.robjects 
d = dict() 
for i, (k,v) in enumerate(orders.iteritems()): 
    print("%s (type: %s - %i/%i)" %(k, v.dtype.kind, i, orders.shape[1])) 
    if v.dtype.kind == 'O': 
     v = rpy2.robjects.vectors.StrVector(v) 
    d[k] = rpy2.robjects.conversion.py2ri(v) 
df = rpy2.robjects.DataFrame(d) 

def print_rsummary(x): 
    print(rpy2.robjects.baseenv['summary'](x)) 

print_rsummary(df) 
+0

この機能は、rpy2 2.3.3+(http://rpy.sourceforge.net/rpy2/doc-2.3/html/changes.html?highlight=pandasを参照)にあります。 –

関連する問題