【问题标题】:Update row names of a data frame in a pipe (%>%) [duplicate]更新管道中数据框的行名(%>%)[重复]
【发布时间】:2021-06-04 20:54:26
【问题描述】:

我使用某些索引值ind 从数据框DF1 中提取,对提取的数据框进行一些修改,然后使用%>% 运算符将其保存为DF2。完成后,我想重新编号 DF2 中的条目:

DF2 <- DF1[ind,] %>% ...do some modifications... %>% row.names() <- NULL

我的问题是row.names() &lt;- NULL 部分不起作用。我必须使用代码

row.names(DF2) <- NULL

然后重新编号DF2 中的条目。但是,在将修改后的数据框分配给DF2 之前,我想将其作为最后一步。如何修改最后一部分以完成从 1 到行数的重新编号?我曾尝试使用mutate,但无法让它工作。谢谢

【问题讨论】:

标签: r dataframe dplyr rowname


【解决方案1】:

使用`rownames&lt;-`() 赋值函数。

library(magrittr)
d %>% `rownames<-`(NULL)
#   X1 X2 X3 X4
# 1  1  4  7 10
# 2  2  5  8 11
# 3  3  6  9 12

数据:

d <- structure(list(X1 = 1:3, X2 = 4:6, X3 = 7:9, X4 = 10:12), class = "data.frame", row.names = c("a", 
"b", "c"))

【讨论】:

    猜你喜欢
    • 2012-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-08
    • 2023-03-31
    • 2019-11-23
    • 1970-01-01
    相关资源
    最近更新 更多