作者:sunhuan | 来源:互联网 | 2023-05-26 05:11
要从数据框中删除行,请使用以下命令:
data <- data[-1, ]
例如,删除第一行.我需要删除前6行,所以我使用了以下内容:
data <- data[-c(1,2,3,4,5,6), ]
要么
data <- data[-(1:6), ]
这可以删除行名称,但引入了一个名为" row.names
我无法摆脱"的新列,除非我使用该命令:
row.names(data) <- NULL
这是什么原因?有没有更好的方法可以用一个命令删除多个行/列?
例:
在以下代码之后:
tquery <- tquery[-(1:6), ]
这是数据:
1> Rich Scriven..:
虽然看起来如此,但实际上并没有在数据中添加列.您所看到的只是使用的结果View()
.该函数将数据框的"row.names"属性显示为第一列,但您没有真正添加该列.
这是预期和记录的行为.从详细信息部分help(View)
如果数据框上有行名称,则1:nrow
它们显示在单独的第一列中row.names
.
因此,由于您对数据进行了子集化,因此行名称在技术上不再存在 1:nrow
,因此在查看器中引入了新列.
在控制台中打印您的数据,您将看到差异.
View(mtcars) ## because the mtcars row names are not 1:nrow
与
mtcars
基本上,不要相信View()
显示实际数据的精确表示.而是使用attributes()
,*names()
,dim()
,length()
,等,或只是偷看的数据head()
.