観測の行番号をどのように参照しますか?たとえば、「データ」と呼ばれるdata.frame
があり、各観測の行番号に等しい変数data$rownumber
を作成する場合は、ループを使用せずにどうしますか?Rの行番号の参照
Q
Rの行番号の参照
12
A
答えて
19
これらはあなたがdata.frame
を作成rownames
として、デフォルトでは存在しています。
R> df = data.frame('a' = rnorm(10), 'b' = runif(10), 'c' = letters[1:10])
R> df
a b c
1 0.3336944 0.39746731 a
2 -0.2334404 0.12242856 b
3 1.4886706 0.07984085 c
4 -1.4853724 0.83163342 d
5 0.7291344 0.10981827 e
6 0.1786753 0.47401690 f
7 -0.9173701 0.73992239 g
8 0.7805941 0.91925413 h
9 0.2469860 0.87979229 i
10 1.2810961 0.53289335 j
rownames
コマンドでアクセスできます。
R> rownames(df)
[1] "1" "2" "3" "4" "5" "6" "7" "8" "9" "10"
あなたが数字としてそれらを必要とする場合、単にas.numeric(rownames(df))
のように、as.numeric
を追加することによって、数値に強制。
あなたが探しているものを知っているかのようにあなたが(あなたがどのコマンドを使用することができ、アイテムdf$c == 'i'
を言う、それらを追加する必要はありません。
R> which(df$c =='i')
[1] 9
か、列がわからない場合
R> which(df == 'i', arr.ind=T)
row col
[1,] 9 3
あなたは、またはdf$c[9]
を使用して要素にアクセスすることができます。
あなたがそれらを追加したい場合は、を使用することができますこれはに割り当てられている可能性があるため、デフォルトのインデックス番号ではなくなります(どのコマンドでもrownames
に割り当ててもインデックス番号が返され続けます)ので、これはdf$rownumber <- 1:nrow(df)
より堅牢ではありませんが、です。
1
これはおそらく最も簡単な方法です:それはおそらく、あなたがその行インデックスで行を選択したい場合は、あなたが簡単なブラケット表記
data[3,]
vs.
data[data$rownumber==3,]
でこれを行うことができることは注目に値します
data$rownumber = 1:dim(data)[1]
だから私は本当にこの新しいコラムが何を達成するのか分かりません。
6
は単に:
data$rownumber = 1:nrow(Data)
関連する問題
- 1. キャプチャグループの参照番号
- 2. R、デバッグ行番号
- 3. .NET参照アセンブリ - バージョン番号
- 4. データベーステーブルから参照番号を生成
- 5. Rデータフレームの行番号を取得
- 6. R:ベクトルの番号要素
- 7. 番号の検証 - 別の属性への参照
- 8. 最小参照番号の例クロスリファレンスの例
- 9. Angular JSコンソールエラー:行番号が私のソースファイルを参照していない
- 10. 行番号を使用しているRの表のサブセット?
- 11. チャート番号を参照せずにチャートを選択
- 12. WinMergeの行番号
- 13. ビューの行番号
- 14. BigQueryの行番号?
- 15. イベントビューアの行番号
- 16. R - 列サブセット間の相関 - 現在の参照行
- 17. 支払いの失敗後に購入参照番号/注文番号を再利用する
- 18. R:参照のフィールドReferenceクラスのクラス
- 19. R内の暗黙の変数参照
- 20. Raster&Polygonsの座標参照系R
- 21. R参照クラスのメソッド初期化
- 22. 行番号が
- 23. パス行番号
- 24. 行番号
- 25. 行番号が
- 26. 郵便番号の保存と照会
- 27. PostgreSQL 9.1の正しい照合番号
- 28. JavaのSwingの行番号
- 29. 行番号のシェルスクリプトのデバッグ
- 30. Netbeansのjtextpaneの行番号
'dim(data)[1]'の代わりに 'nrow(data)'を使うことができます。 –
rownamesは数字ではない文字です。それは混乱につながる可能性があります。 – Roland
@Rolandその代替ソリューションを削除することをお勧めします。 –