2016-04-01 13 views
0

ile ilgili döngü oluşturulan dosyalar için adlar atayım Belirli zaman noktaları arasında gün sayısını artırarak birden çok veri kümesi oluşturmaya çalışıyorum. Onlara yeni isimleri vermek istiyorum. Ancak, aşağıdaki koda göre, dosya adı bazen b2015-11-10 23:00:00 biçimindedir. Bunları r stüdyo ortamında tıklayarak görüntüleyebilirim ancak dosya adı kodda geçerli değil. Örneğin
, ben ABC yeni Adını onlara < vermeye çalışacağım - b2015-11-10 23:00:00 ancak hata dışarı çıkıncaya: abc <" beklenmedik sayısal sabit - b2015-12-22 23: Hata ". Herhangi bir fikir? Baştaki for döngüsünde a1, a2, a3 ... gibi dosya adlarını atayabilirsem harika olur, o zaman isimleri tekrar atamam gerekmez. Çok teşekkürler! Eğer açıklayıcı adları hakkında endişeli değilsenizPOSIXct

start <- as.POSIXct("2015-08-26") 
end <- as.POSIXct("2015-12-24") 
for(i in seq(from=start, by=60*60*24*7, to=end)) { 
     bbbi <- subset(bbact_2015day, ACT_DATE >="2015-08-26" & ACT_DATE <= i) 
     class(i) <- class(start) # correct i type 
     assign(paste0("b", i), aaigpa[,c(1,4,12)]) 
} 

cevap

0

, size for döngü içinde yineleme olduğunu, bir değişken, j oluşturabilir. Ardından, assign işlev içinde j kullanın: Daha açıklayıcı isimler istiyorsanız

start <- as.POSIXct("2015-08-26") 
end <- as.POSIXct("2015-12-24") 
j = 1 
for(i in seq(from=start, by=60*60*24*7, to=end)) { 
    bbbi <- subset(bbact_2015day, ACT_DATE >="2015-08-26" & ACT_DATE <= i) 
    class(i) <- class(start) # correct i type 
    assign(paste0("b", j), aaigpa[,c(1,4,12)]) 
    j = j+1 
} 

Alternatif olarak, kullanabilirsiniz:

start <- as.POSIXct("2015-08-26") 
end <- as.POSIXct("2015-12-24") 
for(i in seq(from=start, by=60*60*24*7, to=end)) { 
    bbbi <- subset(bbact_2015day, ACT_DATE >="2015-08-26" & ACT_DATE <= i) 
    class(i) <- class(start) # correct i type 
    assign(paste0("b", format(i, '%Y%m%d'), #format date label 
      aaigpa[,c(1,4,12)]) 
} 
+0

Teşekkür! İşe yarıyor! – user5843090

İlgili konular