2014-01-21 138 views
2

我是python的新手。 我將不勝感激,如果有人能告訴我如何收官提前在python等效於從R到Python

例如

tmp2=by(data =tmp,tmp$categorie, FUN = function(x) head(x, nb)) 
tmp2=do.call("rbind",tmp2) 

由於使用數據表,

從言論我完成我的帖子:

d=d[,c('categorie','titre','permanent')] 
> d 
    categorie titre permanent 
1   bro Vide-  false 
2   bro March  false 
3   bro Salon  false 
4   bro Puces  false 
5   bro Puces  false 
6   bro March  false 
2158  var IAM  false 
2159  var Valer  false 
2160  zoo Aquar  true 
2161  zoo Menag  true 
2162  zoo Aquar  true 
2163  zoo Aquar  true 

> (tmp =by(data =d,d$categorie, FUN = function(x) head(x, 2))) 
d$categorie: bro 
    categorie titre permanent 
1  bro Vide-  false 
2  bro March  false 
------------------------------------------------------------------------------------ 
d$categorie: var 
    categorie titre permanent 
2158  var IAM  false 
2159  var Valer  false 
------------------------------------------------------------------------------------ 
d$categorie: zoo 
    categorie titre permanent 
2160  zoo Aquar  true 
2161  zoo Menag  true 
> 
> (tmp2=do.call("rbind",tmp)) 
     categorie titre permanent 
bro.1   bro Vide-  false 
bro.2   bro March  false 
var.2158  var IAM  false 
var.2159  var Valer  false 
zoo.2160  zoo Aquar  true 
zoo.2161  zoo Menag  true 
+1

你想做什麼?並非所有的Pythonistas都知道R :( –

+1

這將是很好的知道,'R'有什麼'R' – embert

回答

1

給定的R代碼是split-apply-combine範例的示例:

  • 由類變量拆分data.frame
  • 應用功能爲每個組
  • 結果合併成一個data.frame

在Python中,你可以使用pandasgroupby到做同樣的事情:

import pandas as pd 
d = {'one' : [1., 2., 3., 4.],'two' : [1., 2., 3., 4.], 'group' : [1, 1, 2, 2]} 
df = pd.DataFrame(d) 
df.groupby(['group']).head(1) 
+0

非常感謝。這正是我正在尋找的問候 – GjT