我正在使用以下代码创建一个数据文件:
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等):
rownames(df) <- NULL但是,当我打印出df时,它仍然显示行名。在创建数据框架时,是否存在不包含行名的方法?我找到了一个关于row.name = FALSE的建议,但当我尝试它时,我发现了一些错误(我可能把它放在了错误的地方)。
编辑:我想要做的是将dateframe转换成一个表,并且我不希望表中出现行名。
发布于 2014-06-26 10:34:08
您已经成功地删除了行名。如果没有行名,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>发布于 2015-01-06 20:50:59
是的,我知道已经过了半年多了,有点晚了,但是
row.names(df) <- NULL确实有用。至少对我来说:-)
如果您在row.names中有一些重要的信息,比如日期,我所做的就是:
df$Dates <- as.Date(row.names(df))这将在末尾添加一个新列,但如果需要,则在数据帧的开头添加一个新列。
df <- df[,c(7,1,2,3,4,5,6,...)]希望这对那些来自谷歌的人有所帮助:)
发布于 2019-09-25 02:56:58
如果您想通过kable格式化您的表,可以使用row.names = F
kable(df, row.names = F)https://stackoverflow.com/questions/24428051
复制相似问题