首页 > 解决方案 > 如何以新子集中的行将具有有序数字的方式子集数据框?

问题描述

我有一个df

df = data.frame(a = c(1, 2, 3), b = c(3, 2, 1))

df像这样子集:

df = df[2:3, ]

现在,当我检查df如下:

> df

  a b
2 2 2
3 3 1

第一个值的数字为 2,第二个数字的数字为 3。如何df以新子集具有有序数字的方式对原始值进行子集化?

期望的输出:

> df

  a b
1 2 2
2 3 1

标签: rdataframesubset

解决方案


将行名设置为NULL

`row.names<-`(df[2:3, ], NULL)
  a b
1 2 2
2 3 1

或者默认更改class totibble ordata.table which does not allow row.names i.e. it sets the row names toNULL`

> tibble::as_tibble(df[2:3, ])
# A tibble: 2 × 2
      a     b
  <dbl> <dbl>
1     2     2
2     3     1

推荐阅读