2016-05-07 6 views
1

にrownamesの複製私はすべての18行の後に繰り返す必要があり寸法 [6587 37]とrownamesdata.frameを有します。どのように私はRstudioでこれを行うことができます。Rは、data.frame

+4

data.frame rownamesは一意である必要があります。 – jimmyb

+0

@jimmyb、私は18行まで独特のrownamesを与えなければならないし、それは6587行まで続く。 – irfan

答えて

1

を保持する第2 data.frameに列を作ることができる:

mynames <- c("a", "b", "c", "d", "e", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s") 

paste0(rep(mynames,length.out=6587),rep(1:366,each=18,length.out=6587)) 

それとも次のことができます。

あなたはあなたが欲しいものを得ることができます異なるものを貼り付ける名前を変更します。

+0

その作品は、ありがとうございます。 @Juanjo – irfan

+0

私をupvoteし、良いものとして答えを選択してください。 – Juanjo

+0

@ Juanjo!大量のデータセットから目標のグリッドデータを抽出する方法は? (例えば)私は、40年間の全地域データセットから特定の経度と緯度の日次データを取得する必要があります。 – irfan

1

data.framesの行名は一意である必要があります。

> df <- data.frame(x = 1:2) 
> rownames(df) <- c("a", "a") 
Error in `row.names<-.data.frame`(`*tmp*`, value = value) : 
    duplicate 'row.names' are not allowed 
In addition: Warning message: 
non-unique value when setting 'row.names': ‘a’ 

を名前を一意にするためにmake.namesを使用しますが、まだいくつかの繰り返しの情報を運ぶことができます。

> make.names(c("a","a"), unique = TRUE) 
[1] "a" "a.1" 

これらはgrep から助けを借りて識別することができるまたはあなたの18列名がある場合は、DFや情報

+0

はい、それはエラーであり、今解決されました。 – irfan

関連する問題