R 以已知序列生成输入

R 以已知序列生成输入,r,dataframe,rep,R,Dataframe,Rep,我感兴趣的是为本文中提到的示例生成输入。我已经使用下面的代码片段生成了输入 data.frame(grade = rep(LETTERS[1:5],4,rep=TRUE), sex = c( rep(c('male','female'), each=5), rep('male',4),rep('female', each=6)), class=rep(c(1,2),each=10)) 它给出以下输出: grade sex class 1 A

我感兴趣的是为本文中提到的示例生成输入。我已经使用下面的代码片段生成了输入

data.frame(grade = rep(LETTERS[1:5],4,rep=TRUE), 
       sex = c( rep(c('male','female'), each=5), rep('male',4),rep('female', each=6)),
       class=rep(c(1,2),each=10))
它给出以下输出:

   grade    sex class
1      A   male     1
2      B   male     1
3      C   male     1
4      D   male     1
5      E   male     1
6      A female     1
7      B female     1
8      C female     1
9      D female     1
10     E female     1
11     A   male     2
12     B   male     2
13     C   male     2
14     D   male     2
15     E female     2
16     A female     2
17     B female     2
18     C female     2
19     D female     2
20     E female     2
我不确定这是否是生成此输出的最佳方式。我想知道这样做是否明智


如果这是一个不可接受的问题,请建议正确的提问方式。

由于第15行的原因,此数据没有可靠的结构,因此我不认为有什么神奇的方法可以通过编程方式创建它。如果第15行的sex==male,则可以使用@Pascals expand.grid解决方案。或者您可以在使用第15行后手动覆盖它。@Davidernburg这并没有您提到的第15行中的模式和性别差异。我在这里找不到任何解决方案,你指的是哪一个?这是由@Pascal expand.gridgrade=LETTERS[1:5],sex=c'male','female',class=1:2发布和删除的。你也可以从data.table中使用CJ。@davidernburg的意思是例如data.table::CJletters[1:5],cMale,female,1:2