如何在R中交叉制表两个变量?

har*_*shi 3 r frequency

这似乎是基本的,但我不会得到它.我试图在R中为数据计算频率表,如下所示

1 2 
2 1 
3 1  
Run Code Online (Sandbox Code Playgroud)

我需要运输的CSV输出,其行的双向频率会在数据的A列中所有的唯一项和它的列会在数据的B列的所有独特的条目,单元格的值将是值发生的次数.我已经探索了一些类似的结构,table但我无法以csv格式正确输出值.

样本数据输出:

"","1","2"
"1",0,1
"2",1,0
"3",1,0
Run Code Online (Sandbox Code Playgroud)

Sve*_*ein 8

数据:

df <- read.table(text = "1 2 
2 1 
3 1")
Run Code Online (Sandbox Code Playgroud)

使用table以下方法计算频率

(如果您的对象是矩阵,您可以as.data.frame在使用之前将其转换为数据框table.)

tab <- table(df)

   V2
V1  1 2
  1 0 1
  2 1 0
  3 1 0
Run Code Online (Sandbox Code Playgroud)

使用函数写入数据write.csv:

write.csv(tab, "tab.csv")
Run Code Online (Sandbox Code Playgroud)

生成的文件:

"","1","2"
"1",0,1
"2",1,0
"3",1,0
Run Code Online (Sandbox Code Playgroud)