code: def select_data_for_fit(list_of_wvfeatures):
      
  
      nlines_arc = len(list_of_wvfeatures)
  
      nfit = 0
      ifit = []
      xfit = np.array([])
      yfit = np.array([])
      wfit = np.array([])
      for i in range(nlines_arc):
          if list_of_wvfeatures[i].line_ok:
              ifit.append(i)
              xfit = np.append(xfit, [list_of_wvfeatures[i].xpos])
              yfit = np.append(yfit, [list_of_wvfeatures[i].reference])
              wfit = np.append(wfit, [list_of_wvfeatures[i].funcost])
              nfit += 1
  
      return nfit, ifit, xfit, yfit, wfit
docs: Select information from valid arc lines to facilitate posterior fits.
  
      Parameters
      ----------
      list_of_wvfeatures : list (of WavecalFeature instances)
          A list of size equal to the number of identified lines, which
          elements are instances of the class WavecalFeature, containing
          all the relevant information concerning the line
          identification.
  
      Returns
      -------
      nfit : int
          Number of valid points for posterior fits.
      ifit : list of int
          List of indices corresponding to the arc lines which
          coordinates are going to be employed in the posterior fits.
      xfit : 1d numpy aray
          X coordinate of points for posterior fits.
      yfit : 1d numpy array
          Y coordinate of points for posterior fits.
      wfit : 1d numpy array
          Cost function of points for posterior fits. The inverse of
          these values can be employed for weighted fits.