Guest User

Untitled

a guest
Mar 19th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.03 KB | None | 0 0
  1. import pandas as pd
  2. from sklearn.feature_selection import RFE
  3. import statsmodels.api as sm
  4. def runLogit():
  5.  
  6. df = pd.read_excel('InputFile.xlsx', sheetname='InputToCode')
  7.  
  8. field1 = df['field1']
  9. field2 = df['field2']
  10. field3 = df['field3']
  11. field4 = df['field4']
  12. field5 = df['field5']
  13. field6 = df['field6']
  14. field7 = df['field7']
  15. field8 = df['field8']
  16. field9 = df['field9']
  17.  
  18. field10 = df['field10']
  19. field11e = df['field11']
  20. field12 = df['field12']
  21. field13 = df['field13']
  22.  
  23. df = pd.DataFrame(
  24. {
  25. 'field1': field1,
  26. 'field2': field2,
  27. 'field3': field3,
  28. 'field4': field4,
  29. 'field5': field5,
  30. 'field6': field6,
  31. 'field7': feild7,
  32. 'field8': field8,
  33. 'field9': field9,
  34. 'field10': field10,
  35. 'field11': field11,
  36. 'field12': field12,
  37. 'field13': field13
  38. }
  39. )
  40.  
  41. # Field1 is an Actual list of 1's and 0's in the input data set (which we are trying to predict through the Logit)
  42. y = df['field1'].values
  43.  
  44. print (len(y))
  45. print (df.shape)
  46. logit_model = sm.Logit(y.astype(float), df.astype(float))
  47. result = logit_model.fit()
  48. print (result.summary())
  49.  
  50.  
  51.  
  52.  
  53. #==============================================================================
  54. # Initial call
  55. #==============================================================================
  56.  
  57. runLogit()
  58.  
  59.  
  60. The warning I am getting is:
  61.  
  62. Warning: Maximum number of iterations has been exceeded.
  63. Current function value: 0.296861
  64. Iterations: 35
  65. Traceback (most recent call last):
  66.  
  67. File "<ipython-input-53-4d118e1bf22e>", line 1, in <module>
  68. runfile('C:/Users/xxxx/Desktop/proj/proj.py', wdir='C:/Users/xxxx/Desktop/KYV')
  69.  
  70. File "C:UsersxxxxAppDataLocalContinuumanaconda3libsite-packagesspyderutilssitesitecustomize.py", line 710, in runfile
  71. execfile(filename, namespace)
  72.  
  73. File "C:UsersxxxxAppDataLocalContinuumanaconda3libsite-packagesspyderutilssitesitecustomize.py", line 101, in execfile
  74. exec(compile(f.read(), filename, 'exec'), namespace)
  75.  
  76. File "C:/Users/xxxx/Desktop/KYV/KYV.py", line 135, in <module>
  77. runLogit()
  78.  
  79. File "C:/Users/xxxx/Desktop/KYV/KYV.py", line 125, in runLogit
  80. result = logit_model.fit()
  81.  
  82. File "C:UsersxxxxAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsdiscretediscrete_model.py", line 1377, in fit
  83. disp=disp, callback=callback, **kwargs)
  84.  
  85. File "C:UsersxxxxAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsdiscretediscrete_model.py", line 204, in fit
  86. disp=disp, callback=callback, **kwargs)
  87.  
  88. File "C:UsersxxxxAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsbasemodel.py", line 458, in fit
  89. Hinv = np.linalg.inv(-retvals['Hessian']) / nobs
  90.  
  91. File "C:UsersxxxxAppDataLocalContinuumanaconda3libsite-packagesnumpylinalglinalg.py", line 513, in inv
  92. ainv = _umath_linalg.inv(a, signature=signature, extobj=extobj)
  93.  
  94. File "C:UsersxxxxAppDataLocalContinuumanaconda3libsite-packagesnumpylinalglinalg.py", line 90, in _raise_linalgerror_singular
  95. raise LinAlgError("Singular matrix")
  96.  
  97. LinAlgError: Singular matrix End of Stack Trace.
  98.  
  99. y = ['y']
  100. X = [i for i in data_final if i not in y]
  101.  
  102. #Feature selection
  103. logistic = LogisticRegression()
  104. rfe = RFE(logistic, *number of features*)
  105. rfe = rfe.fit(***df[X], data_final[y]***)
  106. print(rfe.support_)
  107. print(rfe.ranking_)
Add Comment
Please, Sign In to add comment