【问题标题】:Creating binary matrix from two data rows in R从R中的两个数据行创建二进制矩阵
【发布时间】:2015-10-21 23:15:53
【问题描述】:

我有一个包含两个变量的大数据框,其中一个是姓名,另一个是与该姓名相关的人员的 id 编号,我想创建一个矩阵,其中每个姓名是一个观察值,每个 id 是一个变量。

例如

names     ids
peter     23
peter     20
peter     25
john      25
john      22
mike      21

我想获得一个矩阵,其中

names      20     21     22     23

peter      1      0      0      1

等等

问题是我有 38210 个观察值,我在这里尝试了许多类似答案的解决方案,要么 R 崩溃,计算机死机,要么我获得一个包含 291444 个变量的表(使用 as.data.frame.matrix)没有意义,因为变量不能多于原始表中的观察值。

有什么想法吗?谢谢!

【问题讨论】:

  • 你已经尝试过什么?在您的数据子集上尝试它们可能是一个想法。
  • 随便table(df1)!=0
  • 我也试过用'table',一直获取291414个变量,我真的不明白。

标签: r matrix dataframe contingency


【解决方案1】:

我们可以使用table

 +(table(df1)!=0) 

【讨论】:

  • 我也用过table,得到了291414个变量,真的不懂。
  • @matiasg 试试+(table(droplevels(df1))!=0)
猜你喜欢
  • 1970-01-01
  • 2017-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-08
  • 2013-06-30
  • 2016-11-13
相关资源
最近更新 更多