Error in `rownames<-`(`*tmp*`, value = c("2C01", "20089_R03C01", "20089_R04C01", : duplicate rownames not allowed
1
0
Entering edit mode
6.0 years ago
bookerbn • 0

Hello,

I am having getting an error that with duplicate row names in R when there are no duplicate row names? I am downloading the raw idat files for a methylation array. Here are the files and here is the code I am trying to run. I think it is reading the Green and Red channels as duplicates (they have the same string until the "Grn" and "Red".

 idatFiles

 [1] "./GSM2612501_200379120089_R02C01_Grn.idat.gz" "./GSM2612501_200379120089_R02C01_Red.idat.gz"

 [3] "./GSM2612502_200379120089_R03C01_Grn.idat.gz" "./GSM2612502_200379120089_R03C01_Red.idat.gz"

 [5] "./GSM2612503_200379120089_R04C01_Grn.idat.gz" "./GSM2612503_200379120089_R04C01_Red.idat.gz"

 [7] "./GSM2612504_200379120089_R05C01_Grn.idat.gz" "./GSM2612504_200379120089_R05C01_Red.idat.gz"

 [9] "./GSM2612505_200379120089_R06C01_Grn.idat.gz" "./GSM2612505_200379120089_R06C01_Red.idat.gz"

[11] "./GSM2612506_200379120089_R01C02_Grn.idat.gz" "./GSM2612506_200379120089_R01C02_Red.idat.gz"

[13] "./GSM2612507_200379120089_R02C02_Grn.idat.gz" "./GSM2612507_200379120089_R02C02_Red.idat.gz"

[15] "./GSM2612508_200379120089_R03C02_Grn.idat.gz" "./GSM2612508_200379120089_R03C02_Red.idat.gz"

[17] "./GSM2612509_200379120089_R04C02_Grn.idat.gz" "./GSM2612509_200379120089_R04C02_Red.idat.gz"

[19] "./GSM2612510_200379120089_R05C02_Grn.idat.gz" "./GSM2612510_200379120089_R05C02_Red.idat.gz"

[21] "./GSM2612511_200379120089_R06C02_Grn.idat.gz" "./GSM2612511_200379120089_R06C02_Red.idat.gz"

[23] "./GSM2612512_200379120136_R01C01_Grn.idat.gz" "./GSM2612512_200379120136_R01C01_Red.idat.gz"

[25] "./GSM2612513_200379120136_R02C01_Grn.idat.gz" "./GSM2612513_200379120136_R02C01_Red.idat.gz"

[27] "./GSM2612514_200379120136_R03C01_Grn.idat.gz" "./GSM2612514_200379120136_R03C01_Red.idat.gz"

[29] "./GSM2612515_200379120136_R04C01_Grn.idat.gz" "./GSM2612515_200379120136_R04C01_Red.idat.gz"

[31] "./GSM2612516_200379120136_R05C01_Grn.idat.gz" "./GSM2612516_200379120136_R05C01_Red.idat.gz"

[33] "./GSM2612517_200379120136_R06C01_Grn.idat.gz" "./GSM2612517_200379120136_R06C01_Red.idat.gz"

[35] "./GSM2612518_200379120136_R01C02_Grn.idat.gz" "./GSM2612518_200379120136_R01C02_Red.idat.gz"

[37] "./GSM2612519_200379120136_R02C02_Grn.idat.gz" "./GSM2612519_200379120136_R02C02_Red.idat.gz"

[39] "./GSM2612520_200379120136_R03C02_Grn.idat.gz" "./GSM2612520_200379120136_R03C02_Red.idat.gz"

[41] "./GSM2612521_200379120136_R04C02_Grn.idat.gz" "./GSM2612521_200379120136_R04C02_Red.idat.gz"

[43] "./GSM2612522_200379120136_R05C02_Grn.idat.gz" "./GSM2612522_200379120136_R05C02_Red.idat.gz"

[45] "./GSM2612523_200379120136_R06C02_Grn.idat.gz" "./GSM2612523_200379120136_R06C02_Red.idat.gz"

[47] "./GSM2612524_200379120089_R01C01_Grn.idat.gz" "./GSM2612524_200379120089_R01C01_Red.idat.gz"

[49] "./GSM2612525_3998579182_R01C01_Grn.idat.gz"   "./GSM2612525_3998579182_R01C01_Red.idat.gz"  

[51] "./GSM2612526_3998579182_R02C01_Grn.idat.gz"   "./GSM2612526_3998579182_R02C01_Red.idat.gz"  

[53] "./GSM2612527_3998579182_R03C01_Grn.idat.gz"   "./GSM2612527_3998579182_R03C01_Red.idat.gz"  

[55] "./GSM2612528_3998579182_R04C01_Grn.idat.gz"   "./GSM2612528_3998579182_R04C01_Red.idat.gz"  

[57] "./GSM2612529_3998579182_R05C01_Grn.idat.gz"   "./GSM2612529_3998579182_R05C01_Red.idat.gz"  

[59] "./GSM2612530_3998579182_R06C01_Grn.idat.gz"   "./GSM2612530_3998579182_R06C01_Red.idat.gz"  

[61] "./GSM2612531_3998579182_R01C02_Grn.idat.gz"   "./GSM2612531_3998579182_R01C02_Red.idat.gz"  

[63] "./GSM2612532_3998579182_R02C02_Grn.idat.gz"   "./GSM2612532_3998579182_R02C02_Red.idat.gz"  

[65] "./GSM2612533_3998579182_R03C02_Grn.idat.gz"   "./GSM2612533_3998579182_R03C02_Red.idat.gz"  

[67] "./GSM2612534_3998579182_R04C02_Grn.idat.gz"   "./GSM2612534_3998579182_R04C02_Red.idat.gz"  

[69] "./GSM2612535_3998579182_R05C02_Grn.idat.gz"   "./GSM2612535_3998579182_R05C02_Red.idat.gz"  

[71] "./GSM2612536_3998579182_R06C02_Grn.idat.gz"   "./GSM2612536_3998579182_R06C02_Red.idat.gz"  

 sampleNames(rgSet) <- sub(".*3", "3", sampleNames(rgSet))
Error in `rownames<-`(`*tmp*`, value = c("379120089_R02C01", "3C01", "379120089_R04C01",  : 
  duplicate rownames not allowed
  

Any help would be much appreciated

genome methylation idat files R Illumina • 2.5k views
ADD COMMENT
0
Entering edit mode
6.0 years ago

It is your sub() command that produces non-unique names, which you then attempt to set as row names to your object rgSet.

NB - If you want to use the full stop in a function like sub(), then it's good practice to escape it like this: \\.

To maintain unique names, you need the GSM identifier. You could do this:

sampleNames(rgSet) <- sub("\\.\\/", "", sub("\\.idat\\.gz", "", sub("_[0-9]*_R", "_R", sampleNames(rgSet))))
sampleNames(rgSet)

 [1] "GSM2612501_R02C01_Grn" "GSM2612501_R02C01_Red" "GSM2612502_R03C01_Grn"
 [4] "GSM2612502_R03C01_Red" "GSM2612503_R04C01_Grn" "GSM2612503_R04C01_Red"
 [7] "GSM2612504_R05C01_Grn" "GSM2612504_R05C01_Red" "GSM2612505_R06C01_Grn"
[10] "GSM2612505_R06C01_Red" "GSM2612506_R01C02_Grn" "GSM2612506_R01C02_Red"
[13] "GSM2612507_R02C02_Grn" "GSM2612507_R02C02_Red" "GSM2612508_R03C02_Grn"
[16] "GSM2612508_R03C02_Red" "GSM2612509_R04C02_Grn" "GSM2612509_R04C02_Red"
[19] "GSM2612510_R05C02_Grn" "GSM2612510_R05C02_Red" "GSM2612511_R06C02_Grn"
[22] "GSM2612511_R06C02_Red" "GSM2612512_R01C01_Grn" "GSM2612512_R01C01_Red"
[25] "GSM2612513_R02C01_Grn" "GSM2612513_R02C01_Red" "GSM2612514_R03C01_Grn"
[28] "GSM2612514_R03C01_Red" "GSM2612515_R04C01_Grn" "GSM2612515_R04C01_Red"
[31] "GSM2612516_R05C01_Grn" "GSM2612516_R05C01_Red" "GSM2612517_R06C01_Grn"
[34] "GSM2612517_R06C01_Red" "GSM2612518_R01C02_Grn" "GSM2612518_R01C02_Red"
[37] "GSM2612519_R02C02_Grn" "GSM2612519_R02C02_Red" "GSM2612520_R03C02_Grn"
[40] "GSM2612520_R03C02_Red" "GSM2612521_R04C02_Grn" "GSM2612521_R04C02_Red"
[43] "GSM2612522_R05C02_Grn" "GSM2612522_R05C02_Red" "GSM2612523_R06C02_Grn"
[46] "GSM2612523_R06C02_Red" "GSM2612524_R01C01_Grn" "GSM2612524_R01C01_Red"
[49] "GSM2612525_R01C01_Grn" "GSM2612525_R01C01_Red" "GSM2612526_R02C01_Grn"
[52] "GSM2612526_R02C01_Red" "GSM2612527_R03C01_Grn" "GSM2612527_R03C01_Red"
[55] "GSM2612528_R04C01_Grn" "GSM2612528_R04C01_Red" "GSM2612529_R05C01_Grn"
[58] "GSM2612529_R05C01_Red" "GSM2612530_R06C01_Grn" "GSM2612530_R06C01_Red"
[61] "GSM2612531_R01C02_Grn" "GSM2612531_R01C02_Red" "GSM2612532_R02C02_Grn"
[64] "GSM2612532_R02C02_Red" "GSM2612533_R03C02_Grn" "GSM2612533_R03C02_Red"
[67] "GSM2612534_R04C02_Grn" "GSM2612534_R04C02_Red" "GSM2612535_R05C02_Grn"
[70] "GSM2612535_R05C02_Red" "GSM2612536_R06C02_Grn" "GSM2612536_R06C02_Red"

> length(sampleNames(rgSet))
[1] 72

> length(unique(sampleNames(rgSet))
[1] 72
ADD COMMENT

Login before adding your answer.

Traffic: 2466 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6