我正在使用以下代码创建一个数据框:
df <- data.frame(dbGetQuery(con, paste('select * from test')))
结果如下:
UID BuildingCode AccessTime
1 123456 BUILD-1 2014-06-16 07:00:00
2 364952 BUILD-2 2014-06-15 08:00:00
3 95865 BUILD-1 2014-06-06 09:50:00
然后,我尝试使用以下代码按照 here 的建议删除行名称(1、2、3 等):
rownames(df) <- NULL
但是当我打印出 df 时,它仍然显示行名称。有没有办法在创建数据框时不包含行名称?我发现了一个关于 row.name = FALSE 的建议,但是当我尝试它时,我只是得到了错误(我可能把它放在了错误的位置)。
编辑:我想要做的是将日期框转换为 HTML 表格,并且我不希望行名称出现在表格中。
最佳答案
您已成功删除行名称。如果不存在行名称,print.data.frame
方法仅显示行号。
df1 <- data.frame(values = rnorm(3), group = letters[1:3],
row.names = paste0("RowName", 1:3))
print(df1)
# values group
#RowName1 -1.469809 a
#RowName2 -1.164943 b
#RowName3 0.899430 c
rownames(df1) <- NULL
print(df1)
# values group
#1 -1.469809 a
#2 -1.164943 b
#3 0.899430 c
您可以使用参数 row.names
为 FALSE
来禁止打印 print.data.frame
中的行名称和数字。
print(df1, row.names = FALSE)
# values group
# -1.4345829 d
# 0.2182768 e
# -0.2855440 f
编辑: 正如评论中所写,您希望将其转换为 HTML。从 xtable
和 print.xtable
文档中,您可以看到参数 include.rownames
可以解决问题。
library("xtable")
print(xtable(df1), type="html", include.rownames = FALSE)
#<!-- html table generated in R 3.1.0 by xtable 1.7-3 package -->
#<!-- Thu Jun 26 12:50:17 2014 -->
#<TABLE border=1>
#<TR> <TH> values </TH> <TH> group </TH> </TR>
#<TR> <TD align="right"> -0.34 </TD> <TD> a </TD> </TR>
#<TR> <TD align="right"> -1.04 </TD> <TD> b </TD> </TR>
#<TR> <TD align="right"> -0.48 </TD> <TD> c </TD> </TR>
#</TABLE>
关于从数据框中删除行名称的显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24428051/