我想在R中創建一個函數,根據分類變量(一個因子)的級別創建一個數據框的子集。最終,我的功能將操作這個子集,但我不能讓第一部分的工作....在R中創建函數:使用因子級別作爲參數?
這裏是我的代碼,結果我得到的,當我使用的功能:
> Petite13.b [1:5, ]
Numero Espece Arbre Nb
1 1 BOP Brout_mort 1
61 1 BOP Mutile 2
130 1 SAB Mutile 1
213 1 BOP Vivant 1
439 1 SAB Vivant 2
> Creation.PLL <- function(Esp, Arb, Source){
+ x <-Source[Source$Espece== "Esp" & Source$Arbre== "Arb", ]
+ return(x)
+ }
>
> Creation.PLL(SAB, Vivant, Petite13.b)
[1] Numero Espece Arbre Nb
<0 lignes> (ou 'row.names' de longueur nulle)
我的數據幀,這裏名爲Source
將始終有一個名爲Source$Espece
的變量,另一個名爲Source$Arbre
。
謝謝。
你是不是要做'Source [Source $ Espece == Esp&Source $ Arbre == Arb,]'(其中'Esp'和'Arb'沒有引用)? – nrussell 2014-09-26 14:33:30
請發佈一個小的*可重現的*您的數據樣本。 – 2014-09-26 14:35:40
@nrussell即使我把「Esp」放在函數編程和使用它之後,它也不起作用。 – Emilie 2014-09-26 14:39:26