R で「行名」列に名前を付けるにはどうすればいいですか? 質問する

R で「行名」列に名前を付けるにはどうすればいいですか? 質問する

私は、行名が意味を持つ R のデータ フレームを操作しています。したがって、行名の列に名前を付けたいと思います。どうすればいいでしょうか?

ベストアンサー1

行名を data.frame の適切な列に変換したいようです。例:

# add the rownames as a proper column
myDF <- cbind(Row.Names = rownames(myDF), myDF)
myDF

#           Row.Names id val vr2
# row_one     row_one  A   1  23
# row_two     row_two  A   2  24
# row_three row_three  B   3  25
# row_four   row_four  C   4  26

元の行名を削除する場合は、次のようにします。

rownames(myDF) <- NULL
myDF
#   Row.Names id val vr2
# 1   row_one  A   1  23
# 2   row_two  A   2  24
# 3 row_three  B   3  25
# 4  row_four  C   4  26


あるいは、すべてのデータが同じクラス(つまり、すべて数値、またはすべて文字列)の場合は、Matrixに変換して名前を付けることができます。dimnames

myMat <- as.matrix(myDF)
names(dimnames(myMat)) <- c("Names.of.Rows", "")
myMat

# Names.of.Rows id  val vr2 
#   row_one   "A" "1" "23"
#   row_two   "A" "2" "24"
#   row_three "B" "3" "25"
#   row_four  "C" "4" "26"

おすすめ記事