qmcc                   package:QCA                   R Documentation

_F_i_n_d _a _m_i_n_i_m_u_m _s_o_l_u_t_i_o_n _i_n _a _b_o_o_l_e_a_n _p_r_o_c_e_d_u_r_e, _u_s_i_n_g _t_h_e _Q_u_i_n_e-_M_c_C_l_u_s_k_e_y _a_l_g_o_r_i_t_h_m

_D_e_s_c_r_i_p_t_i_o_n:

     This function is the core of the QCA (Qualitative Comparative
     Analysis) package. The QCA is the bridge between the qualitative
     and quantitative worlds, and its fundamental philosophy is based
     on Mill's methods of inductive inquiry. Given a dataset with cases
     on the rows (or better said, case studies) and various conditions
     on the columns, this function finds which condition (or
     combination of conditions) need to be met to trigger the outcome.

_U_s_a_g_e:

     qmcc(mydata, outcome = "", incl.rem = FALSE,
          expl.1 = FALSE, expl.0 = FALSE, expl.ctr = FALSE, expl.mo = FALSE,
          incl.1 = FALSE, incl.0 = FALSE, incl.ctr = FALSE, incl.mo = FALSE,
          quiet = FALSE, details = FALSE, complete = FALSE, chart = FALSE,
          use.letters = TRUE, show.lines = FALSE, tt = FALSE)

_A_r_g_u_m_e_n_t_s:

  mydata: the dataset used for minimization (dataframe or matrix)

 outcome: the name of the outcome variable from the dataset

incl.rem: include the remainders in the minimization procedure

  expl.1: explain the outcomes equal to 1

  expl.0: explain the outcomes equal to 0

expl.ctr: explain the contradictions

 expl.mo: explain the missing outcomes (not implemented yet)

  incl.1: include the outcomes equal to 1 in the minimization procedure

  incl.0: include the outcomes equal to 0 in the minimization procedure

incl.ctr: include the contradictions in the minimization procedure

 incl.mo: include the missing outcome in the minimization procedure
          (not implemented yet)

   quiet: prints the solution without any other information

 details: prints some relevant details (set to FALSE if quiet is TRUE

complete: prints every detail from every step of the procedure

   chart: print the prime implicants chart

use.letters: should letters be used instead of column names

show.lines: show the lines corresponding to every minimized prime
          implicant

      tt: specifies whether the input data is already a truth table

_N_o_t_e:

     The function finds a solution very quickly for a small number of
     conditions. For eight conditions, it finds a solution in maximium
     22 seconds, for nine conditions in maximum 15 minutes. For 10 or
     more conditions, it needs A LOT of memory and it takes a very long
     time to find a solution. Different other algorithms will be
     implemented for these cases

_A_u_t_h_o_r(_s):

     Adrian Dusa
      Romanian Social Data Archive, University of Bucharest
      adi@roda.ro

_R_e_f_e_r_e_n_c_e_s:

     Ragin, Charles C. 1987 _The Comparative Method. Moving beyond
     qualitative and quantitative strategies_, Berkeley: University of
     California Press

_S_e_e _A_l_s_o:

     'truth.table', 'daisy', 'lp'

_E_x_a_m_p_l_e_s:

     data(Osa)

     # find a solution using the Quine-McCluskey (qmcc) algorithm
     # explaining only the presence of the outcome
     qmcc(Osa, outcome="OUT", expl.1=TRUE)

     # now including the remainers and the contradictions
     qmcc(Osa, outcome="OUT", expl.1=TRUE, incl.rem=TRUE, incl.ctr=TRUE)

     # the same as above, but we want to see the prime implicants chart
     qmcc(Osa, outcome="OUT", expl.1=TRUE, incl.rem=TRUE, incl.ctr=TRUE, chart=TRUE)

     # even more details
     qmcc(Osa, outcome="OUT", expl.1=TRUE, incl.rem=TRUE, incl.ctr=TRUE, details=TRUE)

     # printing the lines corresponding to each prime implicant
     qmcc(Osa, outcome="OUT", expl.1=TRUE, incl.rem=TRUE, incl.ctr=TRUE, show.lines=TRUE)

     # now explaining the absence of the outcome
     qmcc(Osa, outcome="OUT", expl.0=TRUE, incl.rem=TRUE, incl.ctr=TRUE, show.lines=TRUE)

