在r中绑定时,将嵌套的for循环的计数器值添加到每一行

我希望能够从具有4列的现有数据框创建具有6列的新数据框。循环工作时,额外的两列应为计数器的值(i和j)。

我的草稿代码如下

a是二进制的

b是绝对的

c是数字(在这种情况下为1到200)

d是一个数字(在此示例中为1到5,在现实生活中为1到2500)

#### make an example of mydata 
a<- c(0,0,0,0,0,0,0,0,0,0,1,1,0,1)
b<- c("a","b","a","b","b","c","a","e","c","a","a","b","d","f")
c<- c(20,30,40,40,54,76,23,23,78,23,34,1,88,1)
d<- c(1,1,1,2,2,2,3,3,4,5,5,5,5,5)
mydata<-data.frame(a,b,c,d)

## this just generates random numbers to randomly 
##select row to bind together later
set.seed(1)
choose.test<- data.frame(matrix(NA, nrow = 20, ncol = 30))
for (i in 1:20) 
{  
  choose.test[,i]<-sample(5, 20, replace = TRUE, prob = NULL) 
#random selction of sites WITH replacment
}

# this is the bit I am having trouble with
data<- NULL 
for( j in 1:10){
  for (i in choose.test[,j]) 
  {  data <- rbind(data, mydata[mydata[,4]== i,])
     data[,5]<-j
     data[,6]<-i  
  }}

在每个循环迭代中创建单独的数据帧(在第二个循环中使用i作为计数器),或者接受其他更好的建议也是可行的,因为我是r的新手。我也尝试过assign这样做,但是没有运气。

在每次迭代中,我需要将第4列中的所有行都重新绑定在一起,这些行的值等于1到5之间的随机数(在本示例中,无论如何,在现实生活中,它将在1到2500个站点之间)。这些随机数存储在称为的数据帧中,choose.test其中每列中的随机数仅使用一次,然后下一次迭代移至下一列。

没有“ data [,5] <-j data [,6] <-i”,它几乎可以实现我想要的功能,但是我真的很想拥有第5和第6列来标识i和j循环的哪个迭代这些行来自,因此我可以在每次迭代时分析数据(我正在使用该数据进行引导)。显然,上面的代码不起作用,但是我不确定如何使它完成我想做的事情。在当前版本中,它仅将最大计数器值添加到第5列和第6列的所有行。

非常感谢,本

以下代码解决了我的问题

data<- NULL 
for( j in 1:10){
  for (i in choose.test[,j]) 
  {  data <- rbind(data, cbind(mydata[mydata[,4]== i,], i=i, j=j))}}

感谢MrFlick提供有用的评论!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

循环并添加到R中的计数器

来自分类Dev

将选择器添加到css文件中的每一行

来自分类Dev

将值列表添加到选择中每一行的末尾

来自分类Dev

将逗号添加到setinterval计数器值

来自分类Dev

将具有设置值的列添加到表中,为每一行扩展表

来自分类Dev

将服务器主机名添加到“查找”输出的每一行

来自分类Dev

将服务器主机名添加到“查找”输出的每一行

来自分类Dev

如何将删除操作添加到具有值id的每一行

来自分类Dev

如何使用熊猫将值添加到数据框的每一行?

来自分类Dev

添加到Notepad ++中的每一行

来自分类Dev

将内容添加到每一行的开头,例如:: before在第一行中添加内容

来自分类Dev

在选择的每一行上,将字符添加到Codemirror中的多行选择中

来自分类Dev

使用 python 数据框,将满足条件的行计数列添加到满足条件的每一行

来自分类Dev

在python map中:使用lambda函数将行号添加到矩阵的每一行

来自分类Dev

如何使用 Bash 将字符串添加到文件中的每一行

来自分类Dev

将文本信息添加到 Python dictWriter 中的每一行

来自分类Dev

将列表添加到数据框中的每一行

来自分类Dev

如何将数组添加到二维数组中的每一行?

来自分类Dev

AngularJS-添加的每一行重复,不同的计数器

来自分类Dev

AngularJS-添加的每一行重复,不同的计数器

来自分类Dev

循环遍历数据帧的每一行,并根据条件将元素添加到数据帧

来自分类Dev

无法将一些代码添加到我的点数计数器脚本中

来自分类Dev

循环,将文件名添加到制表符分隔文件中的每一行的开头(从而生成新列)

来自分类Dev

在SQL(Postgres)中动态将前一行值添加到当前行值

来自分类Dev

根据列中的正则表达式语法,将变量添加到包含每一行最大值的数据框中

来自分类Dev

如何使用变量计数器将命名元素添加到R列表?

来自分类Dev

将已过的时间计数器添加到等待栏中-Matlab

来自分类Dev

将记录添加到表中,直到计数器为真

来自分类Dev

将数据复制到新工作簿,并将特定文本添加到特定列中的每一行的值

Related 相关文章

  1. 1

    循环并添加到R中的计数器

  2. 2

    将选择器添加到css文件中的每一行

  3. 3

    将值列表添加到选择中每一行的末尾

  4. 4

    将逗号添加到setinterval计数器值

  5. 5

    将具有设置值的列添加到表中,为每一行扩展表

  6. 6

    将服务器主机名添加到“查找”输出的每一行

  7. 7

    将服务器主机名添加到“查找”输出的每一行

  8. 8

    如何将删除操作添加到具有值id的每一行

  9. 9

    如何使用熊猫将值添加到数据框的每一行?

  10. 10

    添加到Notepad ++中的每一行

  11. 11

    将内容添加到每一行的开头,例如:: before在第一行中添加内容

  12. 12

    在选择的每一行上,将字符添加到Codemirror中的多行选择中

  13. 13

    使用 python 数据框,将满足条件的行计数列添加到满足条件的每一行

  14. 14

    在python map中:使用lambda函数将行号添加到矩阵的每一行

  15. 15

    如何使用 Bash 将字符串添加到文件中的每一行

  16. 16

    将文本信息添加到 Python dictWriter 中的每一行

  17. 17

    将列表添加到数据框中的每一行

  18. 18

    如何将数组添加到二维数组中的每一行?

  19. 19

    AngularJS-添加的每一行重复,不同的计数器

  20. 20

    AngularJS-添加的每一行重复,不同的计数器

  21. 21

    循环遍历数据帧的每一行,并根据条件将元素添加到数据帧

  22. 22

    无法将一些代码添加到我的点数计数器脚本中

  23. 23

    循环,将文件名添加到制表符分隔文件中的每一行的开头(从而生成新列)

  24. 24

    在SQL(Postgres)中动态将前一行值添加到当前行值

  25. 25

    根据列中的正则表达式语法,将变量添加到包含每一行最大值的数据框中

  26. 26

    如何使用变量计数器将命名元素添加到R列表?

  27. 27

    将已过的时间计数器添加到等待栏中-Matlab

  28. 28

    将记录添加到表中,直到计数器为真

  29. 29

    将数据复制到新工作簿,并将特定文本添加到特定列中的每一行的值

热门标签

归档