表中列的行名无效,转换为列表或as.data.frame引入额外的行

表中列的行名无效,转换为列表或as.data.frame引入额外的行,r,dataframe,R,Dataframe,我的数据是来自更大数据框的分类变量计数表。我的目标是在该数据框中绘制每个治疗的存活/死亡实例数 数据帧如下所示: Treatment Plate Sex Days Status 1 1 1 U NA Dead 2 1 1 U NA Dead 3 1 1 U NA

我的数据是来自更大数据框的分类变量计数表。我的目标是在该数据框中绘制每个治疗的存活/死亡实例数

数据帧如下所示:

  Treatment Plate Sex                 Days Status
1          1     1   U                  NA   Dead
2          1     1   U                  NA   Dead
3          1     1   U                  NA   Dead
4          1     1   U                  NA   Alive
5          1     1   U                  NA   Dead
6          1     1   U                  NA   Dead
数据表如下所示:

  Treatment Plate Sex                 Days Status
1          1     1   U                  NA   Dead
2          1     1   U                  NA   Dead
3          1     1   U                  NA   Dead
4          1     1   U                  NA   Alive
5          1     1   U                  NA   Dead
6          1     1   U                  NA   Dead
表(子集$治疗,子集$状态)

我想把行名改为列(最好是一行一行)。当我尝试添加列时,我得到以下结果:

> Status$names <- rownames(Status)
Warning message:
In Status$names <- rownames(Status) : Coercing LHS to a list
> Status
[[1]]
[1] 144

[[2]]
[1] 141

[[3]]
[1] 144
>状态$names状态状态
Var1 Var2频率
11人死亡144人
2 3人死亡141
37人死亡144人
410人死亡105人
5 13人死亡69
6控制死亡12
7控制2死亡2
8 1仍然是0
9 3仍然在踢3
10 7仍在踢0
11 10仍然在踢39
12 13仍然在踢3
13控制装置仍在运转60
14控制2仍在踢70

您似乎正在寻找
取消通行

在下面的示例中,我使用了
mtcars
dataset来转换
表(mtcars$cyl,mtcars$am)

转换为数据帧格式

tibble::rownames\u to\u column
可用于将rownames添加为第一列

library(tibble)
rownames_to_column(data.frame(unclass(table(mtcars$cyl, mtcars$am))), 
                   "rownames_col")
输出为:

  rownames_col X0 X1
1            4  3  8
2            6  4  3
3            8 12  2

您需要注意的一点是,表是一个经过重组的排列数据帧。例如,行名不是观察单位,而是变量。您也可以使用
as.data.frame.matrix(Status)
这将创建一个与您的表完全相同的data.frame。看见
library(tibble)
rownames_to_column(data.frame(unclass(table(mtcars$cyl, mtcars$am))), 
                   "rownames_col")
  rownames_col X0 X1
1            4  3  8
2            6  4  3
3            8 12  2