简体   繁体   English

使用R重塑数据

[英]Reshape Data using R

I am new to R and I have data like below 我是R的新手,并且我有如下数据

NAME
----
Balachandra
Sunita
Kali
Jagmeet

I would like to make it as 我想成为

NAME1       NAME2
-----------------------
Balachandra Balachandra
Balachandra Sunita
Balachandra Kali
Balachandra Jagmeet    
Sunita      Balachandra
Sunita      Sunita
Sunita      Kali
Sunita      Jagmeet    
Kali        Balachandra
Kali        Sunita
Kali        Kali
Kali        Jagmeet    
Jagmeet     Balachandra
Jagmeet     Sunita
Jagmeet     Kali
Jagmeet     Jagmeet    

To have all possible combinations of Names 具有名称的所有可能组合

Any idea how to do that? 任何想法如何做到这一点?

We can use expand.grid 我们可以使用expand.grid

expand.grid(NAME1=df1$NAME, NAME = df1$NAME)[2:1]
#      NAME         NAME1
#1  Balachandra Balachandra
#2  Balachandra      Sunita
#3  Balachandra        Kali
#4  Balachandra     Jagmeet
#5       Sunita Balachandra
#6       Sunita      Sunita
#7       Sunita        Kali
#8       Sunita     Jagmeet
#9         Kali Balachandra
#10        Kali      Sunita
#11        Kali        Kali
#12        Kali     Jagmeet
#13     Jagmeet Balachandra
#14     Jagmeet      Sunita
#15     Jagmeet        Kali
#16     Jagmeet     Jagmeet

Or use CJ from data.table 或者使用data.table CJ

library(data.table)
setDT(df1, key = "Name")[CJ(Name, Name)]

data 数据

df1 <- data.frame(NAME = c("Balachandra", "Sunita", "Kali", 
               "Jagmeet"), stringsAsFactors=FALSE)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM