我正在使用以下代码创建数据框:
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
然后,我尝试通过使用以下代码来删除行名称(1、2、3等),作为here建议:
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
您可以禁止将
print.data.frame
作为row.names
的行名称和数字打印在FALSE
中。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>