title: individual if statem. ok, multiple similar if statem. in for loop produces NA's
body: <p>i wrote a function where the individual if statements execute ok.
  If I place them in a for loop I get NA's as a result. I can't find my error.</p>
  
  <p>Total data:</p>
  
  <pre><code>structure(list(ID = c("ClearHelder", "Donkerblauw", "Donkerbruin", "Donkergeel", "Donkergroen", "Donkeroranje", "Donkerroodpaars", "Lichtblauw", "Lichtbruin", "Lichtekleur", "Lichtgroenturq", "Opakblauw", "Opakgeel", "Opakoranje", "Opakrood", "Witopak"), 
  L = c(58.8333333333333, 32.26, 28.9433333333333, 63.9566666666667, 
  37.1666666666667, 49.57, 29.0433333333333, 45.7266666666667, 
  32.045, 51.3516666666667, 45.8533333333333, 42.6733333333333, 
  73.3333333333333, 55.7066666666667, 39.5333333333333, 83.64
  ), a = c(-2.25666666666667, -0.326666666666667, 5.14, -7.44666666666667, 
  -23.68, 27.5033333333333, 31.38, -5.71, 5.41, 5.63666666666667, 
  -22.5466666666667, -15.7466666666667, 7.52333333333333, 34.0666666666667, 
  38.4266666666667, -1.25666666666667), b = c(1.07, -20, 14.8433333333333, 
  64.1666666666667, 14.5466666666667, 44.0266666666667, 10.8133333333333, 
  -15.27, 14.105, 24.02, 2.78666666666667, -31.03, 46.96, 51.0266666666667, 
  21.3033333333333, 1.33333333333333), DE = c(58.8833333333333, 
  37.9733333333333, 32.9333333333333, 90.9133333333333, 46.5033333333333, 
  71.7866666666667, 44.11, 48.5466666666667, 35.43, 56.9966666666667, 
  51.1833333333333, 55.07, 87.4166666666667, 82.9066666666667, 
  57.3033333333333, 83.66), heightmm = c(17.6666666666667, 
  18.6666666666667, 21.6666666666667, 14.3333333333333, 10.3333333333333, 
  9.66666666666667, 16, 23.6666666666667, 7.5, 19.1666666666667, 
  8.33333333333333, 11.3333333333333, 8.66666666666667, 7.33333333333333, 
  8.33333333333333, 10.3333333333333), L1 = c(58.8333333333333, 
  32.26, 28.9433333333333, 63.9566666666667, 37.1666666666667, 
  49.57, 29.0433333333333, 45.7266666666667, 32.045, 51.3516666666667, 
  45.8533333333333, 42.6733333333333, 73.3333333333333, 55.7066666666667, 
  39.5333333333333, 83.64), C = c(2.5, 20.0033333333333, 15.7133333333333, 
  64.6, 27.7933333333333, 51.92, 33.1866666666667, 16.3033333333333, 
  15.105, 24.6966666666667, 22.7166666666667, 34.81, 47.5966666666667, 
  61.26, 43.9533333333333, 1.85), h = c(154.583333333333, 269.066666666667, 
  70.9, 96.62, 148.446666666667, 58.0133333333333, 18.8433333333333, 
  249.483333333333, 68.98, 76.6866666666667, 172.963333333333, 
  243.093333333333, 80.8866666666667, 52.8766666666667, 28.93, 
  134.26), SDL = c(1.6015721442799, 1.87128298234126, 0.697877735232563, 
  0.759561276878521, 2.73075691582633, 0.624259561400543, 0.820751687986892, 
  1.50230933343747, 0.431335136523796, 0.765569504791475, 1.64536723357837, 
  1.47869311668559, 2.45528681284556, 2.88377067974091, 5.43927691272777, 
  0.618789140176196), SDa = c(0.0838649708360607, 0.106926766215636, 
  0.17, 0.632639971337042, 0.45639894828976, 1.34001243775322, 
  0.946202938063499, 0.112694276695846, 0.15556349186104, 0.986279203200933, 
  0.680024509362224, 1.07342132144528, 0.257164020293145, 0.734325086956269, 
  1.78146943092868, 0.098657657246325), SDb = c(0.0916515138991168, 
  0.288444102037118, 0.583209510667764, 2.22554113269859, 0.673523075575985, 
  0.88793768550126, 0.492172056636024, 0.281602556806575, 0.615182899632296, 
  1.85564005130305, 0.328075194632775, 0.515072810387036, 1.87032082809341, 
  3.61903762529948, 2.51213720432092, 0.408697116864474), SDDE = c(1.60157214427991, 
  1.47585003754898, 0.575354962899719, 1.63469670989249, 1.77128013971063, 
  0.895786432880808, 0.626019169035583, 1.50274193836911, 0.169705627484768, 
  1.07548438699345, 1.37485756838057, 1.2285357137666, 1.78421784918023, 
  3.21324342889444, 0.828090172223613, 0.625539766921335), 
  SDheightmm = c(1.15470053837925, 1.52752523165195, 0.577350269189626, 
  1.52752523165195, 1.15470053837925, 0.577350269189626, 1, 
  0.577350269189626, 0.707106781186548, 3.7638632635454, 0.577350269189626, 
  1.52752523165195, 1.15470053837925, 1.52752523165195, 1.52752523165195, 
  0.577350269189626), SDL1 = c(1.6015721442799, 1.87128298234126, 
  0.697877735232563, 0.759561276878521, 2.73075691582633, 0.624259561400543, 
  0.820751687986892, 1.50230933343747, 0.431335136523796, 0.765569504791475, 
  1.64536723357837, 1.47869311668559, 2.45528681284556, 2.88377067974091, 
  5.43927691272777, 0.618789140176196), SDC = c(0.0360555127546398, 
  0.282901631902915, 0.601775151807828, 2.2400669632848, 0.739346558342793, 
  1.07670794554512, 1.04987300819353, 0.277908857961263, 0.51618795026618, 
  1.7203681776488, 0.70528953865298, 0.155241746962601, 1.85564903290825, 
  2.94001700675353, 2.7588463772623, 0.253574446662119), SDh = c(2.65108154030262, 
  0.326547597347358, 0.339558536926997, 0.511175116765277, 
  0.716961179795206, 1.32666247905537, 0.545007645206316, 0.429224106188516, 
  1.3717871555019, 2.84698905278308, 0.673968347426892, 1.94448793602155, 
  0.659191423892431, 4.27468517359271, 1.82189461824772, 10.3321198212177
  ), hex = c("#8A8F8C", "#354E6B", "#54412E", "#AC9C14", "#34613F", 
  "#B0622A", "#732E35", "#507085", "#5B4836", "#917652", "#3F7767", 
  "#466889", "#DBAD5D", "#CC6B2B", "#9C3F3D", "#CFD1CE")), .Names = c("ID", "L", "a", "b", "DE", "heightmm", "L1", "C", "h", "SDL", "SDa", "SDb", "SDDE", "SDheightmm", "SDL1", "SDC", "SDh", "hex"), class = "data.frame", row.names = c(NA, -16L))
  </code></pre>
  
  <p>Trun data:</p>
  
  <pre><code>structure(list(Sample = structure(1:6, .Label = c("Sample 1", "Sample 2", "Sample 3", "Sample 4", "Sample 5", "Sample 6"), class = "factor"), 
  Time = structure(1:6, .Label = c("10:51:04 AM", "10:51:05 AM", 
  "10:51:06 AM", "10:51:07 AM", "10:51:08 AM", "10:51:09 AM"
  ), class = "factor"), L = c(57.61, 57.16, 53.96, 57.3, 55.27, 
  57.9), C = c(4.56, 4.17, 5.14, 3.9, 3.63, 3.47), h = c(219.98, 
  226.13, 233.39, 221.78, 213.56, 214.16), L1 = c(57.61, 57.16, 
  53.96, 57.3, 55.27, 57.9), a = c(-3.49, -2.89, -3.06, -2.91, 
  -3.03, -2.87), b = c(-2.93, -3.01, -4.13, -2.6, -2.01, -1.95
  ), DE = c(36.52, 36.95, 40.24, 36.78, 38.77, 36.13), heihgtmm = c(53.1, 
  67.01, 80.16, 85.3, 86.37, 92.36), hex = c(NA, NA, NA, NA, 
  NA, NA)), .Names = c("Sample", "Time", "L", "C", "h", "L1", "a", "b", "DE", "heihgtmm", "hex"), class = "data.frame", row.names = c(NA, -6L))
  </code></pre>
  
  <p>The code for one line execution:</p>
  
  <pre><code>for(i in 1:nrow(Trun)){
   if (Trun$L[i] &gt; Total$L[1]-Total$SDL[1] &amp; Trun$L[i] &lt; Total$L[1]+Total$SDL[1]){
   Trun$hex[i] &lt;- Total$hex[1]
  }}
  </code></pre>
  
  <p>This gives the right result:</p>
  
  <pre><code>Sample        Time     L     C    h      L1     a     b    DE   heihgtmm     hex
  1 Sample 1 10:51:04 AM 57.61 4.56 219.98 57.61 -3.49 -2,93 36.52    53.10 #8A8F8C
  2 Sample 2 10:51:05 AM 57.16 4.17 226.13 57.16 -2.89 -3,01 36.95    67.01    &lt;NA&gt;
  3 Sample 3 10:51:06 AM 53.96 5.14 233.39 53.96 -3.06 -4,13 40.24    80.16    &lt;NA&gt;
  4 Sample 4 10:51:07 AM 57.30 3.90 221.78 57.30 -2.91  -2,6 36.78    85.30 #8A8F8C
  5 Sample 5 10:51:08 AM 55.27 3.63 213.56 55.27 -3.03 -2,01 38.77    86.37    &lt;NA&gt;
  6 Sample 6 10:51:09 AM 57.90 3.47 214.16 57.90 -2.87 -1,95 36.13    92.36 #8A8F8C
  </code></pre>
  
  <p>Making a function with multiple similar statements in a variable:</p>
  
  <pre><code>colortest &lt;- function(x){
  for ( i in 1:nrow(x)){
      if (x$L[i] &gt; Total$L[1]-Total$SDL[1] &amp; x$L[i] &lt; Total$L[1]+Total$SDL[1]){
          x$hex[i] &lt;- Total$hex[1]
      }else if(x$L[i] &gt; Total$L[2]-Total$SDL[2] &amp; x$L[i] &lt; Total$L[2]+Total$SDL[2]){
          x$hex[i] &lt;- Total$hex[2]
      }else if (x$L[i] &gt; Total$L[3]-Total$SDL[3] &amp; x$L[i] &lt; Total$L[3]+Total$SDL[3]){
          x$hex[i] &lt;- Total$hex[3]
      }else if (x$L[i] &gt; Total$L[4]-Total$SDL[4] &amp; x$L[i] &lt; Total$L[4]+Total$SDL[4]){
          x$hex[i] &lt;- Total$hex[4]
      }else if (x$L[i] &gt; Total$L[5]-Total$SDL[5] &amp; x$L[i] &lt; Total$L[5]+Total$SDL[5]){
          x$hex[i] &lt;- Total$hex[5]
      }else if (x$L[i] &gt; Total$L[6]-Total$SDL[6] &amp; x$L[i] &lt; Total$L[6]+Total$SDL[6]){
          x$hex[i] &lt;- Total$hex[6]
      }else if (x$L[i] &gt; Total$L[7]-Total$SDL[7] &amp; x$L[i] &lt; Total$L[7]+Total$SDL[7]){
          x$hex[i] &lt;- Total$hex[7]
      }else if (x$L[i] &gt; Total$L[8]-Total$SDL[8] &amp; x$L[i] &lt; Total$L[8]+Total$SDL[8]){
          x$hex[i] &lt;- Total$hex[8]
      }else if (x$L[i] &gt; Total$L[9]-Total$SDL[9] &amp; x$L[i] &lt; Total$L[9]+Total$SDL[9]){
          x$hex[i] &lt;- Total$hex[9]
      }else if (x$L[i] &gt; Total$L[10]-Total$SDL[10] &amp; x$L[i] &lt; Total$L[10]+Total$SDL[10]){
          x$hex[i] &lt;- Total$hex[10]
      }else if (x$L[i] &gt; Total$L[11]-Total$SDL[11] &amp; x$L[i] &lt; Total$L[11]+Total$SDL[11]){
          x$hex[i] &lt;- Total$hex[11]
      }else if (x$L[i] &gt; Total$L[12]-Total$SDL[12] &amp; x$L[i] &lt; Total$L[12]+Total$SDL[12]){
          x$hex[i] &lt;- Total$hex[12]
      }else if (x$L[i] &gt; Total$L[13]-Total$SDL[13] &amp; x$L[i] &lt; Total$L[13]+Total$SDL[13]){
          x$hex[i] &lt;- Total$hex[13]
      }else if (x$L[i] &gt; Total$L[14]-Total$SDL[14] &amp; x$L[i] &lt; Total$L[14]+Total$SDL[14]){
          x$hex[i] &lt;- Total$hex[14]
      }else if (x$L[i] &gt; Total$L[15]-Total$SDL[15] &amp; x$L[i] &lt; Total$L[15]+Total$SDL[15]){
          x$hex[i] &lt;- Total$hex[15]
      }else if (x$L[i] &gt; Total$L[16]-Total$SDL[16] &amp; x$L[i] &lt; Total$L[16]+Total$SDL[16]){
          x$hex[i] &lt;- Total$hex[16]
      }
  }}
  </code></pre>
  
  <p>execute colortest(Trun) gives the result with the NA's:</p>
  
  <pre><code>Sample        Time     L     C    h      L1    a      b    DE    heihgtmm  hex
  1 Sample 1 10:51:04 AM 57.61 4.56 219.98 57.61 -3.49 -2,93 36.52    53.10 &lt;NA&gt;
  2 Sample 2 10:51:05 AM 57.16 4.17 226.13 57.16 -2.89 -3,01 36.95    67.01 &lt;NA&gt;
  3 Sample 3 10:51:06 AM 53.96 5.14 233.39 53.96 -3.06 -4,13 40.24    80.16 &lt;NA&gt;
  4 Sample 4 10:51:07 AM 57.30 3.90 221.78 57.30 -2.91  -2,6 36.78    85.30 &lt;NA&gt;
  5 Sample 5 10:51:08 AM 55.27 3.63 213.56 55.27 -3.03 -2,01 38.77    86.37 &lt;NA&gt;
  6 Sample 6 10:51:09 AM 57.90 3.47 214.16 57.90 -2.87 -1,95 36.13    92.36 &lt;NA&gt;
  </code></pre>
  
  <p>What must I change in the function to make the if lines work just like the individual example?</p>