Skip to main content
. Author manuscript; available in PMC: 2019 Mar 14.
Published in final edited form as: Pac Symp Biocomput. 2019;24:248–259.

Algorithm 1.

Alternating Imputation and Correction Method (AICM)

Hyperparameter: Dropping rate r, maximum iteration iter, regularization term λr, and hard constraint term λh.
Input: Two data matrices, of both n drugs and p cell-lines with summarized sensitivity data, denote as A,Bn×p. We denote jth column of two matrices as aj; bj, j ∈ {1, 2,…,p} respectively. We denote the entry at ith row and jth column as Aij and Bij respectively, {i, j} ∈ {1, 2,…,n} × {1, 2,…, p}.
Initialization: For each j ∈ {1, 2,…,p} for all i ∈ {1, 2,…,n} such that Bij is missing while Aij is not, we denote such set as BijNA, we fit a linear model such that αj, βj maximizes bjαjaj+βj2 and then impute the missing values as BijNA=αjAij+βj. Then swap the role of A and B and repeat the above process. Now we have two matrices with same missing indices.
for k in {1, 2,… Iter} do
Swap: AB, BA.
Drop: Randomly drop r × n × p data uniformly from A, we denote the indices of the dropped data as D{1,2,,n}×{1,2,,p}, and hence dropped data as a set ADR:={{i,j}DAij}. In a similar fashion, we denote dropped data of column k as aDRk:={{i,j}D,i s.t.j=kAij}, we denote the corresponding data in kth column of B as bADRk. We fit a set of parameters αj, βj for each j with the following objective function:
         minαj,βj1nbj(αjaj+βj)2+λraDRj(αjbADRj+βj)(4)
Correction: Set aDRj=αjbADRj+βj or each j. We denote the set of corrected value as {AIMP}=j=1p{aDRj}.
Threshold: For {i,j}D, we set{AIMP}ij to
          {AIMP}ij=max(min(Aij,(1λh)Aij),(1+λh)Aij)(5)
end for