我想用R.
创建一个关联矩阵
我有一个包含3列的文件,如:
# id x y
# 1 A 22 2
# 2 B 4 21
# 3 C 21 360
# 4 D 26 2
# 5 E 22 58
# 6 F 2 347
我想要一个矩阵(没有col和行名称):
# 2 4 21 22 26 58 347 360
# A 1 0 0 1 0 0 0 0
# B 0 1 1 0 0 0 0 0
# C 0 0 1 0 0 0 0 1
# D 0 1 0 0 1 0 0 0
# E 0 0 0 1 0 1 0 0
# F 1 0 0 0 0 0 1 0
数据
df1 <- structure(list(id = c("A", "B", "C", "D", "E", "F"),
x = c(22L, 4L, 21L, 26L, 22L, 2L),
y = c(2L, 21L, 360L, 2L, 58L, 347L)),
.Names = c("id", "x", "y"), class = "data.frame", row.names = c(NA, -6L))
答案 0 :(得分:3)
我们可以fetchedResultsController.fetchedObjects?.count
数据集并尝试使用melt
table
或仅使用library(reshape2)
table(melt(df1, id.var="id")[-2])
base R
答案 1 :(得分:2)
您可以使用cbind.data.frame()
和table()
功能
> table(cbind.data.frame(ID=df1$id,Result=c(df1$x,df1$y)))
Result
ID 2 4 21 22 26 58 347 360
A 1 0 0 1 0 0 0 0
B 0 1 1 0 0 0 0 0
C 0 0 1 0 0 0 0 1
D 1 0 0 0 1 0 0 0
E 0 0 0 1 0 1 0 0
F 1 0 0 0 0 0 1 0