Menu

'optimal matching' not functioning, pls help

2014-07-08
2014-07-21
  • Hessel Peters-Sengers

    Dear Felix,

    I tried the past two days getting psmatching to operate properly. I also couldn't find the right solution in the discussion topics as I run through it. Maybe you can help me out?

    I installed PSMATCHING3.03 on the fixed IBM SPSS 21.0.0.2, R version 2.14.2, and R essentials for spss 21 on windows xp system 32 bit.

    If I try Optimal Matching via the following syntax:

    PSMATCHING3
    /VARS
    ID = ID
    TREAT = Controlled_vs_Uncontrolled
    COVS = weight length followupDuration
    /MATCHIT
    MATCH=OPTIMAL
    EST =LOGIT
    DISCARD = NONE
    MORDER = LARGEST
    RATIO = 1
    CALIPER = 0
    /PLOT HISTPLOT JITTERPLOT HISTBAL DOTPLOT INDBAL RESOLUTION = 150
    /OUTPUT ALL MATCHED.

    I get only this output when running the syntax above:


    Error
    fullmatch unused argument(s) (data = data)


    Error in xy.coords(x, y, xlabel, ylabel, log) :
    'x' is a list, but does not have components 'x' and 'y'

    Nearest neighbor matching seems to work fine, however, Fullmatching doesn't work either (and Gam logit doesn't work also). The program seems to run fine in the beginning, but it ends abruptly as stated above in the output. Why does only nearest neighbor matching seem to work, and how can I make use of optimal matching and GAM-logit? Does it has to do something with new updates of R?

    Thanks in advance for your answer.

     
    • Felix Thoemmes

      Felix Thoemmes - 2014-07-10

      This seems to be a bug that we need to look into. I will see what I
      can do, we might have to change our code and upload a new version.

      On Tue, Jul 8, 2014 at 10:05 AM, Hessel Peters-Sengers
      hesselps@users.sf.net wrote:

      Dear Felix,

      I tried the past two days getting psmatching to operate properly. I also
      couldn't find the right solution in the discussion topics as I run through
      it. Maybe you can help me out?

      I installed PSMATCHING3.03 on the fixed IBM SPSS 21.0.0.2, R version 2.14.2,
      and R essentials for spss 21 on windows xp system 32 bit.

      If I try Optimal Matching via the following syntax:

      PSMATCHING3
      /VARS
      ID = ID
      TREAT = Controlled_vs_Uncontrolled
      COVS = weight length followupDuration
      /MATCHIT
      MATCH=OPTIMAL
      EST =LOGIT
      DISCARD = NONE
      MORDER = LARGEST
      RATIO = 1
      CALIPER = 0
      /PLOT HISTPLOT JITTERPLOT HISTBAL DOTPLOT INDBAL RESOLUTION = 150
      /OUTPUT ALL MATCHED.

      I get only this output when running the syntax above:


      Error
      fullmatch unused argument(s) (data = data)


      Error in xy.coords(x, y, xlabel, ylabel, log) :
      'x' is a list, but does not have components 'x' and 'y'

      Nearest neighbor matching seems to work fine, however, Fullmatching doesn't
      work either (and Gam logit doesn't work also). The program seems to run fine
      in the beginning, but it ends abruptly as stated above in the output. Why
      does only nearest neighbor matching seem to work, and how can I make use of
      optimal matching and GAM-logit? Does it has to do something with new updates
      of R?

      Thanks in advance for your answer.


      'optimal matching' not functioning, pls help


      Sent from sourceforge.net because you indicated interest in
      https://sourceforge.net/p/psmspss/discussion/general/

      To unsubscribe from further messages, please visit
      https://sourceforge.net/auth/subscriptions/

       
    • Felix Thoemmes

      Felix Thoemmes - 2014-07-13

      Hello,
      After consulting with my grad student who helped programming, we
      believe that the error that optimal / full matching are not working in
      your case, might be that the caliper is set to 0. The error message is
      indeed not very clear, but if you can change that value and check if
      it still not works, let us know. If the caliper is set to 0, only
      identical matches may be allowed, which will often result in no
      matches at all.

      As to whether GAM is not working, I am not sure and we will look into
      this. It could also be related to the caliper and less to GAM.

      Hope that helps for now,
      Felix

      On Tue, Jul 8, 2014 at 10:05 AM, Hessel Peters-Sengers
      hesselps@users.sf.net wrote:

      Dear Felix,

      I tried the past two days getting psmatching to operate properly. I also
      couldn't find the right solution in the discussion topics as I run through
      it. Maybe you can help me out?

      I installed PSMATCHING3.03 on the fixed IBM SPSS 21.0.0.2, R version 2.14.2,
      and R essentials for spss 21 on windows xp system 32 bit.

      If I try Optimal Matching via the following syntax:

      PSMATCHING3
      /VARS
      ID = ID
      TREAT = Controlled_vs_Uncontrolled
      COVS = weight length followupDuration
      /MATCHIT
      MATCH=OPTIMAL
      EST =LOGIT
      DISCARD = NONE
      MORDER = LARGEST
      RATIO = 1
      CALIPER = 0
      /PLOT HISTPLOT JITTERPLOT HISTBAL DOTPLOT INDBAL RESOLUTION = 150
      /OUTPUT ALL MATCHED.

      I get only this output when running the syntax above:


      Error
      fullmatch unused argument(s) (data = data)


      Error in xy.coords(x, y, xlabel, ylabel, log) :
      'x' is a list, but does not have components 'x' and 'y'

      Nearest neighbor matching seems to work fine, however, Fullmatching doesn't
      work either (and Gam logit doesn't work also). The program seems to run fine
      in the beginning, but it ends abruptly as stated above in the output. Why
      does only nearest neighbor matching seem to work, and how can I make use of
      optimal matching and GAM-logit? Does it has to do something with new updates
      of R?

      Thanks in advance for your answer.


      'optimal matching' not functioning, pls help


      Sent from sourceforge.net because you indicated interest in
      https://sourceforge.net/p/psmspss/discussion/general/

      To unsubscribe from further messages, please visit
      https://sourceforge.net/auth/subscriptions/

       
  • Hessel Peters-Sengers

    Dear Felix,

    Thanks for your answer. I tried it (set the caliper at different values, also deleted it from the syntax), but I still get the same error:


    Error
    fullmatch unused argument(s) (data = data)

    Error in xy.coords(x, y, xlabel, ylabel, log) :
    'x' is a list, but does not have components 'x' and 'y'


    I also tried this simplified syntax:

    DATASET ACTIVATE DataSet2.
    PSMATCHING3
    /VARS
    ID = ID
    TREAT = Controlled_vs_Uncontrolled
    COVS = gewicht
    /MATCHIT
    MATCH=OPTIMAL
    EST =LOGIT
    DISCARD = NONE
    RATIO = 1
    CALIPER = .4
    /PLOT RESOLUTION = 96
    /OUTPUT ALL.

    Then I get this error:


    Error
    fullmatch unused argument(s) (data = data)

    Error in data.frame(dict, psspec, weightspec, stringsAsFactors = F) :
    arguments imply differing number of rows: 5, 4


    It seems the error term gives us not helpful information. Maybe you know how to fix this?

    Thanks!

     
    • Felix Thoemmes

      Felix Thoemmes - 2014-07-21

      Hello,
      I agree - the error message is not very helpful and this is something
      that we need to work on. Sometimes errors propagate downstream the
      code, which results in error messages that pop up at later parts of
      the code, even though the problem was further up.
      I am not quite sure why the optimal matching is not working for you
      and it's difficult to pinpoint. I know for a fact that it worked for
      us during testing at one point in time (admittedly, we did have
      problems with it too at other times).

      I am sorry to say that I am a bit stumped as to what is going on with
      the program in your case. Once the semester restarts here in the US we
      may have time to explore this further.

      Best,
      Felix

      On Mon, Jul 14, 2014 at 3:46 AM, Hessel Peters-Sengers
      hesselps@users.sf.net wrote:

      Dear Felix,

      Thanks for your answer. I tried it (set the caliper at different values,
      also deleted it from the syntax), but I still get the same error:


      Error
      fullmatch unused argument(s) (data = data)

      Error in xy.coords(x, y, xlabel, ylabel, log) :

      'x' is a list, but does not have components 'x' and 'y'


      I also tried this simplified syntax:

      DATASET ACTIVATE DataSet2.

      PSMATCHING3
      /VARS
      ID = ID
      TREAT = Controlled_vs_Uncontrolled
      COVS = gewicht

      /MATCHIT
      MATCH=OPTIMAL
      EST =LOGIT
      DISCARD = NONE
      RATIO = 1
      CALIPER = .4
      /PLOT RESOLUTION = 96
      /OUTPUT ALL.

      Then I get this error:


      Error
      fullmatch unused argument(s) (data = data)

      Error in data.frame(dict, psspec, weightspec, stringsAsFactors = F) :
      arguments imply differing number of rows: 5, 4


      It seems the error term gives us not helpful information. Maybe you know how
      to fix this?

      Thanks!


      'optimal matching' not functioning, pls help


      Sent from sourceforge.net because you indicated interest in
      https://sourceforge.net/p/psmspss/discussion/general/

      To unsubscribe from further messages, please visit
      https://sourceforge.net/auth/subscriptions/

       

Log in to post a comment.