R - 如何抑制最左边的列(天),因为它一直以整数的形式出现在我的输出中



我有一些数据目前正在尝试运行。问题是第一列是天,描述为整数。因此,当我申请总和时,天数也被计算在内。如何抑制问题?

medhist <- read.table(header=TRUE, text='
Day  CVS Respi DM  Epilepsy
1   2    3     4    0
2   3    2     2    2
3   3    3     4    2 
4   4    3     2    1
5   1    3     1    3
6   2    2     NA   3
7   3    2     1    0
8   2    3     2    0
9   2    3     2    1
10  2    4     5    1
')
apply(medhist, 2, sum, na.rm=T)

由此输出为

Day      CVS    Respi       DM Epilepsy 
55       24       28       23       13 

我试过了

medhist$Day<- as.character(medhist$Day)

以及

medhist$Day<- as.factor(medhist$Day)

但它为我尝试过的两个代码都会产生错误

Error in FUN(newX[, i], ...) : invalid 'type' (character) of argument

也许您可能希望将天数的length()(即计数(与预期的摘要连接起来,而无需Day列。假设这些日子是唯一的,您可以这样做:

c(Day=length(medhist$Day), apply(medhist[-1], 2, sum, na.rm=TRUE))
# Day      CVS    Respi       DM Epilepsy 
#  10       24       28       23       13 

一个选项是对所选列使用summarise_at,然后附加感兴趣的其他列值

library(dplyr)
medhist %>%
summarise_at(-1, sum, na.rm = TRUE) %>%
bind_cols(Day = last(medhist$Day), .)

最新更新