我有一个简单的问题,但我只是不知道如何解决它。我有一个像这样的dataframe:
structure(list(ID = c(1006332, 1010660,
1012960, 1013515, 1014490), ave_ocean = c(1, 0, 0, 0, 0), ave_price_per_sqft = c(1419.69,
912.18, 600.74, 673.8725, 439.46), ave_year = c(2005, 2009, 1986.4,
2006.25, 1983), ave_DOM = c(7, 10, 36.1, 10.5, 104), total_num_sold = c(1L,
1L, 10L, 4L, 1L)), row.names = c(NA, -5L), class = c("tbl_df",
"tbl", "data.frame"))
ID ave_ocean ave_price_per_sqft ave_year ave_DOM total_num_sold
<dbl> <dbl> <dbl> <dbl> <dbl> <int>
1 1006332 1 1420. 2005 7 1
2 1010660 0 912. 2009 10 1
3 1012960 0 601. 1986. 36.1 10
4 1013515 0 674. 2006. 10.5 4
5 1014490 0 439. 1983 104 1
我想将列ID设置为行名称,然后删除它。我使用下面的代码:
row.names(data) <- data$ID
data <-data[,-c(1)]
当我运行这个程序时,它首先改变了行名称,并将其替换为ID,但一旦我运行第二行删除“ID”列,它就将行名称更改为正常的行名称!
2条答案
按热度按时间xnifntxz1#
阅读文档(第一次)
?tibble::column_to_rownames
,也注意到返回值是data.frame
,因为这个原因。ar7v8xwq2#
第一行设置了行名,但由于您有一个tibble,因此无法看到它。
如果你把数据改成dataframe,你会看到行名。