2013-04-05 37 views
1

我使用rpy2的read_csv()從CSV文件中讀取數據,該函數創建一個DataFrame。現在我想直接操縱整個列。我試過到目前爲止:如何操作數據幀的列

from rpy2.robjects.packages import importr 
utils = importr('utils') 

df = utils.read_csv(logn, header=args.head, skip=args.skip) 
df.rx2('a').ro/10 

我預計寫回它顯然沒有數據框:df不受此操作。因此,另一種想法是

df.rx2('a') = df.rx2('a').ro/10 

,但它產生函數調用是不可轉讓的錯誤 - 這是不是明顯,我因爲LHS應該返回一個Vector

所以我錯過了什麼(?)?

回答

0

在Python函數調用中的確是不可分配的,這就產生了調整一些R代碼的必要性。

嘗試:

df[df.names.index('a')] = df.rx2('a').ro/10 
+0

謝謝,幫助。 – user2248977 2013-04-05 20:15:29