首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何仅针对每个文件中的某些值组合多个.RDS文件?

如何仅针对每个文件中的某些值组合多个.RDS文件?
EN

Stack Overflow用户
提问于 2020-04-01 15:17:49
回答 1查看 160关注 0票数 0

这是我第一次使用R。我试图弄清楚如何有条件地组合我拥有的数据,这些数据分布在五个.RDS文件中。我看了一下this post on reading multiple .RDS files,但是我不想连接数据;我希望在保持总体结构的同时覆盖某些条目和其他条目。

数据文件命名约定遵循如下模式: fold1.rds,fold2.rds,.,fold5.rds

我使用:foldx = readRDS('foldx.rds加载每个文件)

dim(foldx)的调用返回[1] 12 450 4

一个简单的例子说明了我想要完成的任务:

fold1 (当我打印变量时)包含以下值:

代码语言:javascript
复制
      tri-a   cal-c  xali    trop  
PC3   1.000   1.000  -.0235  1.000 
MCF7 -.0548   1.000  1.000   1.000 

虽然fold2数据的相同索引包含:

代码语言:javascript
复制
      tri-a   cal-c  xali    trop  
PC3   -.078   1.000  1.000   1.000 
MCF7  1.000   .0254  1.000   -.015 

也就是说,只有一个数据文件将有一个索引i,j的条目是非1.0的。当未执行计算时,将分配值1.0。

我希望将折叠1到5中的数据组合在一起,这样我就有了一个文件,其中每个1.0的出现都被替换为相应的非1.0值,无论哪个折叠数据文件都包含它。

因此,我的示例结果如下:

代码语言:javascript
复制
      tri-a   cal-c  xali    trop  
PC3   -.078   1.000  -.0235  1.000 
MCF7  -.0548  .0254  1.000   -.015 

我希望这是足够的细节。谢谢。

编辑:

上面的例子简化了我想要完成的任务。这些数据实际上是具有12行、450列和4个条目的三维数组。当我对其中任何一个调用dim时,我就得到了[1] 12 450 4

例如,调用dimnames(fold1)返回:

代码语言:javascript
复制
[[1]]
 [1] "PC3"    "MCF7"   "A375"   "A549"   "ASC"    "HA1E"   "HCC515" "HEPG2"  "HT29"  
[10] "NPC"    "VCAP"   "NEU"   

[[2]]
  [1] "trichostatin-a"                         "geldanamycin"                          
  [3] "iloprost"                               "wortmannin"                            
  [5] "calcitriol"                             "carbacyclin"                           
  [7] "daunorubicin"                           "tretinoin"                             
  [9] "tamoxifen"                              "alvespimycin"                          
 [11] "radicicol"                              "tanespimycin"                          
 [13] "sirolimus"                              "fulvestrant"                           
 [15] "estradiol"                              "mitoxantrone"                          
 [17] "genistein"                              "vorinostat"                            
 [19] "withaferin-a"                           "sorafenib"                             
 [21] "triflupromazine"                        "noretynodrel"                          
 [23] "benzonatate"                            "vemurafenib"                           
 [25] "scopolamine"                            "brefeldin-a"                           
 [27] "vinblastine"                            "cyclosporin-a"                         
 [29] "reboxetine"                             "pinacidil"                             
 [31] "fluticasone"                            "rimcazole"                             
 [33] "methylergometrine"                      "nemonapride"                           
 [35] "cromakalim"                             "cycloheximide"                         
 [37] "clofarabine"                            "naltrindole"                           
 [39] "tenidap"                                "cilastatin"                            
 [41] "nisoxetine"                             "tubocurarine"                          
 [43] "rottlerin"                              "flunarizine"                           
 [45] "resveratrol"                            "dinoprostone"                          
 [47] "tetramethylsilane"                      "danazol"                               
 [49] "aloisine"                               "risperidone"                           
 [51] "cyclopamine"                            "thioperamide"                          
 [53] "luzindole"                              "proxymetacaine"                        
 [55] "pyrrolidine-dithiocarbamate"            "halcinonide"                           
 [57] "pseudoephedrine"                        "caffeic-acid"                          
 [59] "cabergoline"                            "fusaric-acid"                          
 [61] "anandamide"                             "piretanide"                            
 [63] "umbelliferone"                          "xaliproden"                            
 [65] "cuneatin"                               "spironolactone"                        
 [67] "norethisterone"                         "mammea-a"                              
 [69] "irilin-a"                               "graveoline"                            
 [71] "hydrastinine"                           "melperone"                             
 [73] "ecopipam"                               "mevastatin"                            
 [75] "pinocembrin"                            "emodic-acid"                           
 [77] "coumaric-acid"                          "farnesylthiotriazole"                  
 [79] "dehydroisoandosterone"                  "lonidamine"                            
 [81] "relcovaptan"                            "pirfenidone"                           
 [83] "azacyclonol"                            "cucurbitacin-i"                        
 [85] "cyclopiazonic-acid"                     "wiskostatin"                           
 [87] "mianserin"                              "procaterol"                            
 [89] "kynuramine"                             "triciribine"                           
 [91] "mifepristone"                           "noscapine"                             
 [93] "yohimbine"                              "butabindide"                           
 [95] "niguldipine"                            "bromocriptine"                         
 [97] "vincristine"                            "monastrol"                             
 [99] "tropisetron"                            "tropanyl-3,5-dimethylbenzoate"         
[101] "bemesetron"                             "guggulsterone"                         
[103] "ciglitazone"                            "rosiglitazone"                         
[105] "pimozide"                               "pyrazolanthrone"                       
[107] "raclopride"                             "telenzepine"                           
[109] "minoxidil"                              "aminopurvalanol-a"                     
[111] "irinotecan"                             "desmethylclozapine"                    
[113] "riluzole"                               "piceatannol"                           
[115] "cilostamide"                            "vanoxerine"                            
[117] "rotenonic-acid"                         "glibenclamide"                         
[119] "clozapine"                              "kenpaullone"                           
[121] "zardaverine"                            "pregnenolone"                          
[123] "doconexent"                             "betulinic-acid"                        
[125] "ketanserin"                             "arctigenin"                            
[127] "remoxipride"                            "pravastatin"                           
[129] "loperamide"                             "brimonidine"                           
[131] "talipexole"                             "nimesulide"                            
[133] "osthol"                                 "indolophenanthridine"                  
[135] "benperidol"                             "tetramethyl-haematoxylone"             
[137] "gliquidone"                             "carmoxirole"                           
[139] "olomoucine"                             "prostaglandin-b2"                      
[141] "terconazole"                            "embelin"                               
[143] "aniracetam"                             "lisuride"                              
[145] "ciclacillin"                            "testosterone"                          
[147] "nefazodone"                             "anisomycin"                            
[149] "zatebradine"                            "gabazine"                              
[151] "isocarboxazid"                          "lamotrigine"                           
[153] "trapidil"                               "mead-acid"                             
[155] "4,5,6,7-tetrabromobenzotriazole"        "quercetin"                             
[157] "dihydroergocristine"                    "coumestrol"                            
[159] "beclomethasone-dipropionate"            "desoxycortone"                         
[161] "parthenolide"                           "formoterol"                            
[163] "rilmenidine"                            "puromycin"                             
[165] "clofibric-acid"                         "flumetasone"                           
[167] "verapamil"                              "methoprene-acid"                       
[169] "kavain"                                 "hydralazine"                           
[171] "thenoyltrifluoroacetone"                "pirinixic-acid"                        
[173] "forskolin"                              "lovastatin"                            
[175] "phenformin"                             "propoxycaine"                          
[177] "nafcillin"                              "bifemelane"                            
[179] "ergocornine"                            "scriptaid"                             
[181] "skimmianine"                            "apafant"                               
[183] "loreclezole"                            "fenretinide"                           
[185] "nitrocaramiphen"                        "fillalbin"                             
[187] "devazepide"                             "fluprostenol"                          
[189] "rimexolone"                             "tolazamide"                            
[191] "dipropyl-5ct"                           "reserpic-acid"                         
[193] "dextromethorphan"                       "alpha-linolenic-acid"                  
[195] "levocabastine"                          "levonorgestrel"                        
[197] "ouabain"                                "hinokitiol"                            
[199] "denbufylline"                           "ceforanide"                            
[201] "clocortolone-pivalate"                  "seneciphylline"                        
[203] "malonoben"                              "fenobam"                               
[205] "bezafibrate"                            "quinidine"                             
[207] "leoidin"                                "lidoflazine"                           
[209] "farnesylthioacetic-acid"                "norcyclobenzaprine"                    
[211] "semaxanib"                              "arecaidine-but-2-ynyl-ester"           
[213] "progesterone"                           "meprylcaine"                           
[215] "flurofamide"                            "trap-101"                              
[217] "flupentixol"                            "hippeastrine"                          
[219] "cefixime"                               "fluvoxamine"                           
[221] "telmisartan"                            "moxonidine"                            
[223] "estrone"                                "alprenolol"                            
[225] "nitrendipine"                           "mebeverine"                            
[227] "dexamethasone"                          "trimipramine"                          
[229] "tenoxicam"                              "canrenoic-acid"                        
[231] "rolipram"                               "estradiol-benzoate"                    
[233] "brucine"                                "pioglitazone"                          
[235] "nimodipine"                             "budesonide"                            
[237] "mirtazapine"                            "etodolac"                              
[239] "bendroflumethiazide"                    "bepridil"                              
[241] "chloroquine"                            "thalidomide"                           
[243] "naringenin"                             "fenoterol"                             
[245] "piperidolate"                           "caffeine"                              
[247] "celecoxib"                              "penitrem-a"                            
[249] "epirubicin"                             "diclofenac"                            
[251] "apigenin"                               "fenbufen"                              
[253] "nocodazole"                             "cinchonine"                            
[255] "chloroxine"                             "amiodarone"                            
[257] "simvastatin"                            "flutamide"                             
[259] "alrestatin"                             "niclosamide"                           
[261] "erythromycin-estolate"                  "loxapine"                              
[263] "proadifen"                              "bromhexine"                            
[265] "tosyl-phenylalanyl-chloromethyl-ketone" "glycocholic-acid"                      
[267] "spiperone"                              "chlorprothixene"                       
[269] "piperine"                               "dephostatin"                           
[271] "guanaben-acetate"                       "dihydrosamidin"                        
[273] "salicin"                                "fluvastatin"                           
[275] "altretamine"                            "pivmecillinam"                         
[277] "thiethylperazine"                       "tacrolimus"                            
[279] "trazodone"                              "carbamazepine"                         
[281] "ergocryptine"                           "nicergoline"                           
[283] "fluspirilene"                           "ricinine"                              
[285] "methyl-2,5-dihydroxycinnamate"          "chlorpromazine"                        
[287] "amodiaquine"                            "riboflavin"                            
[289] "buspirone"                              "spiramide"                             
[291] "pifithrin-mu"                           "droperidol"                            
[293] "clonidine"                              "salsolinol"                            
[295] "warfarin"                               "tranylcypromine"                       
[297] "glycodeoxycholic-acid"                  "lenalidomide"                          
[299] "oligomycin-a"                           "olaparib"                              
[301] "etomoxir"                               "tivozanib"                             
[303] "orantinib"                              "serdemetan"                            
[305] "15-delta-prostaglandin-j2"              "veliparib"                             
[307] "tozasertib"                             "rucaparib"                             
[309] "vecuronium"                             "raltitrexed"                           
[311] "mosapride"                              "voriconazole"                          
[313] "rifabutin"                              "epigallocatechin-gallate-(-)"          
[315] "docetaxel"                              "moxifloxacin"                          
[317] "linezolid"                              "nelfinavir"                            
[319] "imatinib"                               "vinorelbine"                           
[321] "panobinostat"                           "alitretinoin"                          
[323] "antimycin-a"                            "fludarabine"                           
[325] "alvocidib"                              "lapatinib"                             
[327] "carbetocin"                             "buthionine-sulfoximine"                
[329] "heraclenol"                             "raltegravir"                           
[331] "danusertib"                             "depudecin"                             
[333] "pyroxamide"                             "obatoclax"                             
[335] "enobosarm"                              "belinostat"                            
[337] "sitagliptin"                            "saracatinib"                           
[339] "cytochalasin-d"                         "parthenolide-(alternate-stereo)"       
[341] "deforolimus"                            "axitinib"                              
[343] "tofacitinib"                            "zibotentan"                            
[345] "floxuridine"                            "dasatinib"                             
[347] "capecitabine"                           "cilomilast"                            
[349] "apicidin"                               "ispinesib"                             
[351] "epothilone-a"                           "entinostat"                            
[353] "decitabine"                             "andarine"                              
[355] "tandutinib"                             "motesanib"                             
[357] "5-iodotubercidin"                       "verrucarin-a"                          
[359] "hydroxycholesterol"                     "cyclazosin"                            
[361] "terreic-acid-(-)"                       "oxalomalic-acid"                       
[363] "hyperforin"                             "4-hydroxyretinoic-acid"                
[365] "rifampicin"                             "tenovin-1"                             
[367] "eicosatetraynoic-acid"                  "dexrazoxane"                           
[369] "entecavir"                              "prostaglandin"                         
[371] "everolimus"                             "retinol"                               
[373] "somatostatin"                           "mocetinostat"                          
[375] "aprepitant"                             "danoprevir"                            
[377] "chenodeoxycholic-acid"                  "lithocholic-acid"                      
[379] "neurodazine"                            "lestaurtinib"                          
[381] "farnesol"                               "androstenol"                           
[383] "brivanib"                               "ziprasidone"                           
[385] "androstenedione"                        "taurodeoxycholic-acid"                 
[387] "2-aminopurine"                          "tamibarotene"                          
[389] "rivaroxaban"                            "3,3'-diindolylmethane"                 
[391] "farnesylcysteine-methyl-ester"          "ochratoxin-a"                          
[393] "torin-1"                                "deoxycholic-acid"                      
[395] "cholic-acid"                            "dexketoprofen"                         
[397] "tetradecylthioacetic-acid"              "tyrphostin-51"                         
[399] "iloperidone"                            "canertinib"                            
[401] "flupirtine"                             "palbociclib"                           
[403] "aurora-a-inhibitor-i"                   "ruxolitinib"                           
[405] "mirin"                                  "dacinostat"                            
[407] "epoxycholesterol"                       "acitretin"                             
[409] "sphingosine"                            "gefitinib"                             
[411] "ebelactone-b"                           "retinyl-acetate"                       
[413] "oleoylethanolamide"                     "torin-2"                               
[415] "erlotinib"                              "staurosporine"                         
[417] "zosuquidar"                             "masitinib"                             
[419] "cinacalcet"                             "pazopanib"                             
[421] "acetyl-geranygeranyl-cysteine"          "isotretinoin"                          
[423] "calcifediol"                            "reversine"                             
[425] "xanthohumol"                            "crizotinib"                            
[427] "enzastaurin"                            "acetyl-farnesyl-cysteine"              
[429] "lavendustin-c"                          "taurocholic-acid"                      
[431] "nilotinib"                              "pirarubicin"                           
[433] "safinamide"                             "ellipticine"                           
[435] "cediranib"                              "lypressin"                             
[437] "quizartinib"                            "geranylgeraniol"                       
[439] "lopinavir"                              "plinabulin"                            
[441] "linifanib"                              "bosutinib"                             
[443] "sunitinib"                              "vicriviroc"                            
[445] "acetyl-geranyl-cysteine"                "androstanol"                           
[447] "teicoplanin"                            "dopamine"                              
[449] "azacitidine"                            "idelalisib"                            

[[3]]
[1] "corScore"        "corCmapScorePos" "corCmapScoreNeg" "corCmapScoreAvg"

我已经用Python处理过多维数组,但我不知道如何处理数组中的名称,同时保留它们的结构并移动数值。抱歉弄乱了。

编辑2:解决方案最终是在所有三个维度上迭代。

代码语言:javascript
复制
fold_all = fold1

dims <- dim(fold1)

for (i in 1:dims[1]) {
  for (j in 1:dims[2]) {
    for (k in 1:dims[3] ) {
      if (fold1[i,j,k] != 1) {
        fold_all[i,j,k] = fold1[i,j,k]
      } else if (fold2[i,j,k] != 1) {
        fold_all[i,j,k] = fold2[i,j,k]
      } else if (fold3[i,j,k] != 1) {
        fold_all[i,j,k] = fold3[i,j,k]
      } else if (fold4[i,j,k] != 1) {
        fold_all[i,j,k] = fold4[i,j,k]
      } else if (fold5[i,j,k] != 1) {
        fold_all[i,j,k] = fold5[i,j,k]
      }
    }
  }
}
saveRDS(fold_all, 'all_folds.rds')

再次感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-01 15:50:33

假设您将每个RDS文件导入为具有命名约定dat_one、dat_two等的数据格式,那么您应该能够使用以下代码解决问题。如果这对你有用,请告诉我!

代码语言:javascript
复制
dat_final <- tibble::tribble(
~names,    ~'tri-a',   ~'cal-c',  ~xali,    ~trop,  
'PC3',   1.000,   1.000,  1.000,   1.000, 
'MCF7',  1.000,   1.000,  1.000,   1.000 
)

for (i in 1:nrow(dat_one)){
  for (j in 2:length(dat_one)){
    if (dat_one[i,j] != 1){
      dat_final[i,j] = dat_one[i,j]
    } else if (dat_two[i,j] != 1){
      dat_final[i,j] = dat_two[i,j]
    } else if (dat_three[i,j] != 1){
      dat_final[i,j] = dat_three[i,j]
    } else if (dat_four[i,j] != 1){
      dat_final[i,j] = dat_four[i,j]
    } else if (dat_five[i,j] != 1){
      dat_final[i,j] = dat_five[i,j]
    }
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60974341

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档