【发布时间】:2021-03-14 21:09:53
【问题描述】:
我有一个 503 obs x 637 vars 的列表,我试图强制转换为频率表。我的列表如下所示,其中空白是 NA,但分布在更多的列和行上
| 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|
| string | ||||
| sting_2 | ||||
| string_2 | string_3 |
但是,当我运行 table(list) 时,我得到了一个非常奇怪的输出,并且只能将其截屏以显示
这不会发生在我用来生成此列表的数据帧上,而且我似乎无法弄清楚或搜索绕过它的方法。此外,当我尝试在列表中的一列上使用table() 时,如table(list[2]),我得到NULL,即使我期望string 1 string_2 1。非常不确定发生了什么,并且发誓我以前在这两种情况下都可以正常工作。请帮忙!!!!
【问题讨论】:
-
您有
list或data.frame?有时控制台上显示的数据与 stackoverflow 中显示的数据不明确,您可以添加来自dput(x[1:10,1:10])的输出吗? -
@r2evans 它是一个列表,但是当我将它作为.data.frame 时也会发生同样的事情。你的意思是运行
dput(table(list)[1:10,1:10])?返回“不正确的维数”。以您编写的方式运行代码返回“找不到对象 x” -
table(list(1:5))给出一维表;table(list(1:5,2:6,3:7))给出一个 3d 计数数组。如果您的list长度为 637,那么您正在制作一个 heckuva 大尺寸表。我不知道那会有什么用(我不知道你的上下文),但这似乎不可能在控制台上难以评估。鉴于我的第二个示例,您期望得到什么输出?也许看看dput(lapply(x[1:3],head))的输出以及您期望table(.)产生的输出会有所帮助。 -
我明白了,但我想让我倍感困惑的是
table(list[2]))返回NA -
你知道,这是一个很好的问题。如果你想分享你的一些数据,也许有人可以帮助你。就目前而言,您问题中的样本数据并不代表您的真实向量列表,因此我们能提供的帮助真的很少。