小编Ano*_*non的帖子

如何在R中创建2个数据集的组合

如何使用两个数据集中的每种可能组合创建数据集?

例如,将有2个数据集记住特定列:

ds1 = letters[1:4]
ds2 = letters[5:8]
Run Code Online (Sandbox Code Playgroud)

如果这会影响任何事情,也会有与每个字母相关的值(尽管我认为不应该这样做)

ds1 = data.frame(a=letters[1:4],b=1:4)
ds2 = data.frame(a=letters[5:8],b=5:8)
Run Code Online (Sandbox Code Playgroud)

在最后的数据集,我想为了有的每个组合ds1ds2(如AE,AF,AG等)

起初我想过使用merge,所以我尝试这样做,但它没有用.我认为for循环可能是答案,但我不确定如何开始.

建议?谢谢!

combinations r

4
推荐指数
2
解决办法
667
查看次数

R更改数据框中的元素

正如标题所说,我正试图将数据框中的元素从一个字符更改为另一个字符.数据框如下:

g1=c("CC","DD","GG")
g2=c("AA","BB","EE")
g3=c("HH","II","JJ")

df=data.frame(g1,g2,g3)
Run Code Online (Sandbox Code Playgroud)

我希望将元素从信件格式转换为字母/字母格式(例如CC到C/C或AA到A/A)

我知道使用"strsplit"可以在列表中工作.我也知道我需要以某种方式合并:collapse ="/"

我怎样才能将strsplit函数应用于整个数据框?

我正在思考以下问题:

split=function(x)
{
  unlist(paste(strsplit(x,""),collapse="/"))
}

j=as.data.frame(apply(df,1,split))
Run Code Online (Sandbox Code Playgroud)

但它没有给出预期的结果.

更新----------------显然,以下脚本有效:

split=function(x)
{
  paste(unlist(strsplit(x,"")),collapse="/")
}

p=apply(df,c(1,2),split)
Run Code Online (Sandbox Code Playgroud)

如果有更高效或更方便的方式,请随时分享.

replace element r strsplit

2
推荐指数
1
解决办法
1472
查看次数

标签 统计

r ×2

combinations ×1

element ×1

replace ×1

strsplit ×1