繁体   English   中英

如何在R中的矩阵中删除行名和列名

[英]How to remove RowNames and Column Names in Matrix in R

我有一个输出

       VAR FREQ
  1     A   2 
  2     R   3
  3     B   4

我想显示结果为

        A  2
        R  3
        B  4

这意味着我要删除列名和序列号

我正在使用的查询是

data.frame(sort(table(substr(read.csv('extra/name.csv')$value, 1, 1)),decreasing =TRUE))

请帮助一些指针

我们可以将dimnames设置为NULL dimnames是它是帖子中提到的matrix

dimnames(m1) <- NULL

如果我们需要print ,可以用cat来完成,如@Gregor所示

d1 <- as.data.frame(m1)
cat(do.call(paste, c(d1, collapse='\n')), '\n')
#A 2
#R 3
#B 4 

数据

m1 <- structure(c("A", "R", "B", "2", "3", "4"), .Dim = 3:2, .Dimnames = list(
c("1", "2", "3"), c("VAR", "FREQ")))

cat可以用于将结果打印到控制台,而无需通过print添加细节。

dd = read.table(text = "      VAR FREQ
  1     A   2 
  2     R   3
  3     B   4", header = T, stringsAsFactors = FALSE)

dd
#   VAR FREQ
# 1   A    2
# 2   R    3
# 3   B    4

for(i in 1:nrow(dd)) cat(unlist(dd[i, ]), "\n")
# A 2 
# R 3 
# B 4 

请注意,如果您的数据具有factor s,则需要将其转换为character以进行打印,如下所示。 不保证其他类的列将如何打印(例如, Date类)。 您还将失去通过print自动完成的对齐和四舍五入的功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM