2010-12-04 23 views
7

से एक विशिष्ट पंक्ति का चयन करना मेरा डेटा फ्रेम एक सर्वेक्षण डेटा है जो मुझे .csv फ़ाइल से मिला है। कॉलम में से एक उम्र है और मैं 18 साल से कम उम्र के सभी उत्तरदाताओं को हटाने की तलाश में हूं। इसके बाद मुझे आयु समूहों (18-24, 25-35, आदि) को अपने डेटाफ्रेम में अलग करने की आवश्यकता होगी कि मैं आवृत्ति वितरण कर सकता हूं।एक rpy2 डेटाफ्रेम

The R code is simple enough:

x.sub <- subset(x.df, y > 2) 

लेकिन मैं समझ नहीं कैसे आर() फ़ंक्शन का उपयोग करने के एक अनुसंधान बयान में अजगर से मेरे dataframe चर प्राप्त करने के लिए। ऐसा लगता है कि rpy2 डेटाफ्रेम क्लास में .subset() फ़ंक्शन होना चाहिए। लेकिन अगर यह अस्तित्व में है, तो मुझे यह नहीं मिल रहा है।

उत्तर

10

का उपयोग rpy2 2.2.0-देव (चाहिए 2.1.x के साथ ही होना)

from rpy2.robjects.vectors import DataFrame 
dataf = DataFrame.from_csvfile("my/file.csv") 

dataf_subset = dataf.rx(dataf.rx2("age").ro >= 18, True) 

एक सटीक उदाहरण दस्तावेज में नहीं है यही कारण है कि (और हो सकता है वहाँ होना चाहिए), लेकिन यह तत्वों का गठन किया है हैं: extracting elements और R operators on vectors

+0

मुझे लगता है। इसे स्पष्ट करने के लिए धन्यवाद। की सराहना की। – forestfanjoe