How to silence all sklearn warning












1















I am using F1_score metrics in sklearn. For some training data sets, the total number of y=1(rare case) sets is zero, the F1_score is zero,which is normal. But the sklearn gives the following warning:




"UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 due to no predicted samples".




Does anyone know how to silence this warning? and in general could we silence all kinds of warnings in sklearn ?










share|improve this question

























  • The accepted answer here seems to have the information you are interested in: stackoverflow.com/questions/43162506/…

    – Jason Baumgartner
    Dec 29 '18 at 8:40











  • Possible duplicate of UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 in labels with no predicted samples

    – AI_Learning
    Dec 29 '18 at 16:07











  • I checked all, but not able to find the one I wanted

    – saunter
    Jan 2 at 2:48
















1















I am using F1_score metrics in sklearn. For some training data sets, the total number of y=1(rare case) sets is zero, the F1_score is zero,which is normal. But the sklearn gives the following warning:




"UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 due to no predicted samples".




Does anyone know how to silence this warning? and in general could we silence all kinds of warnings in sklearn ?










share|improve this question

























  • The accepted answer here seems to have the information you are interested in: stackoverflow.com/questions/43162506/…

    – Jason Baumgartner
    Dec 29 '18 at 8:40











  • Possible duplicate of UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 in labels with no predicted samples

    – AI_Learning
    Dec 29 '18 at 16:07











  • I checked all, but not able to find the one I wanted

    – saunter
    Jan 2 at 2:48














1












1








1








I am using F1_score metrics in sklearn. For some training data sets, the total number of y=1(rare case) sets is zero, the F1_score is zero,which is normal. But the sklearn gives the following warning:




"UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 due to no predicted samples".




Does anyone know how to silence this warning? and in general could we silence all kinds of warnings in sklearn ?










share|improve this question
















I am using F1_score metrics in sklearn. For some training data sets, the total number of y=1(rare case) sets is zero, the F1_score is zero,which is normal. But the sklearn gives the following warning:




"UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 due to no predicted samples".




Does anyone know how to silence this warning? and in general could we silence all kinds of warnings in sklearn ?







python scikit-learn






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 2 at 2:42







saunter

















asked Dec 29 '18 at 8:36









sauntersaunter

85




85













  • The accepted answer here seems to have the information you are interested in: stackoverflow.com/questions/43162506/…

    – Jason Baumgartner
    Dec 29 '18 at 8:40











  • Possible duplicate of UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 in labels with no predicted samples

    – AI_Learning
    Dec 29 '18 at 16:07











  • I checked all, but not able to find the one I wanted

    – saunter
    Jan 2 at 2:48



















  • The accepted answer here seems to have the information you are interested in: stackoverflow.com/questions/43162506/…

    – Jason Baumgartner
    Dec 29 '18 at 8:40











  • Possible duplicate of UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 in labels with no predicted samples

    – AI_Learning
    Dec 29 '18 at 16:07











  • I checked all, but not able to find the one I wanted

    – saunter
    Jan 2 at 2:48

















The accepted answer here seems to have the information you are interested in: stackoverflow.com/questions/43162506/…

– Jason Baumgartner
Dec 29 '18 at 8:40





The accepted answer here seems to have the information you are interested in: stackoverflow.com/questions/43162506/…

– Jason Baumgartner
Dec 29 '18 at 8:40













Possible duplicate of UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 in labels with no predicted samples

– AI_Learning
Dec 29 '18 at 16:07





Possible duplicate of UndefinedMetricWarning: F-score is ill-defined and being set to 0.0 in labels with no predicted samples

– AI_Learning
Dec 29 '18 at 16:07













I checked all, but not able to find the one I wanted

– saunter
Jan 2 at 2:48





I checked all, but not able to find the one I wanted

– saunter
Jan 2 at 2:48












1 Answer
1






active

oldest

votes


















3














You can easily ignore the warnings with the help of warnings module in Python like this.



import warnings
warnings.filterwarnings('ignore')


For example,



from sklearn.metrics import f1_score

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This will throw warning. To avoid that use,



from sklearn.metrics import f1_score

import warnings
warnings.filterwarnings('ignore')

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This wont show the warning.






share|improve this answer


























  • Thanks for your info. Actually I have the line "warnings.filterwarnings('ignore')" at the beginning of my code, but still the warning pops out. The reason I guess this "ignore" line only controls warnings of python modules not sklearn ones. In your example, you probably need to exchange y and yhat in the f1_score function to see the effect since the first argument is the ytrue and the second is ypred

    – saunter
    Jan 2 at 2:47











  • @saunter, I have tried both ways. I am not getting any warning in my Machine. Without warnings.filterwarnings('ignore') I am getting the warning, but with that code I am not getting any warnings.

    – Sreeram TP
    Jan 2 at 9:38













  • You are correct. I tested it again,it worked.

    – saunter
    Jan 3 at 1:36











  • Nice to hear it helped.

    – Sreeram TP
    Jan 3 at 5:08











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53968004%2fhow-to-silence-all-sklearn-warning%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









3














You can easily ignore the warnings with the help of warnings module in Python like this.



import warnings
warnings.filterwarnings('ignore')


For example,



from sklearn.metrics import f1_score

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This will throw warning. To avoid that use,



from sklearn.metrics import f1_score

import warnings
warnings.filterwarnings('ignore')

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This wont show the warning.






share|improve this answer


























  • Thanks for your info. Actually I have the line "warnings.filterwarnings('ignore')" at the beginning of my code, but still the warning pops out. The reason I guess this "ignore" line only controls warnings of python modules not sklearn ones. In your example, you probably need to exchange y and yhat in the f1_score function to see the effect since the first argument is the ytrue and the second is ypred

    – saunter
    Jan 2 at 2:47











  • @saunter, I have tried both ways. I am not getting any warning in my Machine. Without warnings.filterwarnings('ignore') I am getting the warning, but with that code I am not getting any warnings.

    – Sreeram TP
    Jan 2 at 9:38













  • You are correct. I tested it again,it worked.

    – saunter
    Jan 3 at 1:36











  • Nice to hear it helped.

    – Sreeram TP
    Jan 3 at 5:08
















3














You can easily ignore the warnings with the help of warnings module in Python like this.



import warnings
warnings.filterwarnings('ignore')


For example,



from sklearn.metrics import f1_score

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This will throw warning. To avoid that use,



from sklearn.metrics import f1_score

import warnings
warnings.filterwarnings('ignore')

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This wont show the warning.






share|improve this answer


























  • Thanks for your info. Actually I have the line "warnings.filterwarnings('ignore')" at the beginning of my code, but still the warning pops out. The reason I guess this "ignore" line only controls warnings of python modules not sklearn ones. In your example, you probably need to exchange y and yhat in the f1_score function to see the effect since the first argument is the ytrue and the second is ypred

    – saunter
    Jan 2 at 2:47











  • @saunter, I have tried both ways. I am not getting any warning in my Machine. Without warnings.filterwarnings('ignore') I am getting the warning, but with that code I am not getting any warnings.

    – Sreeram TP
    Jan 2 at 9:38













  • You are correct. I tested it again,it worked.

    – saunter
    Jan 3 at 1:36











  • Nice to hear it helped.

    – Sreeram TP
    Jan 3 at 5:08














3












3








3







You can easily ignore the warnings with the help of warnings module in Python like this.



import warnings
warnings.filterwarnings('ignore')


For example,



from sklearn.metrics import f1_score

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This will throw warning. To avoid that use,



from sklearn.metrics import f1_score

import warnings
warnings.filterwarnings('ignore')

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This wont show the warning.






share|improve this answer















You can easily ignore the warnings with the help of warnings module in Python like this.



import warnings
warnings.filterwarnings('ignore')


For example,



from sklearn.metrics import f1_score

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This will throw warning. To avoid that use,



from sklearn.metrics import f1_score

import warnings
warnings.filterwarnings('ignore')

yhat = [0] * 100
y = [0] * 90 + [1] * 10

print(f1_score(y, yhat))


This wont show the warning.







share|improve this answer














share|improve this answer



share|improve this answer








edited Jan 2 at 9:39

























answered Dec 29 '18 at 9:22









Sreeram TPSreeram TP

2,70421134




2,70421134













  • Thanks for your info. Actually I have the line "warnings.filterwarnings('ignore')" at the beginning of my code, but still the warning pops out. The reason I guess this "ignore" line only controls warnings of python modules not sklearn ones. In your example, you probably need to exchange y and yhat in the f1_score function to see the effect since the first argument is the ytrue and the second is ypred

    – saunter
    Jan 2 at 2:47











  • @saunter, I have tried both ways. I am not getting any warning in my Machine. Without warnings.filterwarnings('ignore') I am getting the warning, but with that code I am not getting any warnings.

    – Sreeram TP
    Jan 2 at 9:38













  • You are correct. I tested it again,it worked.

    – saunter
    Jan 3 at 1:36











  • Nice to hear it helped.

    – Sreeram TP
    Jan 3 at 5:08



















  • Thanks for your info. Actually I have the line "warnings.filterwarnings('ignore')" at the beginning of my code, but still the warning pops out. The reason I guess this "ignore" line only controls warnings of python modules not sklearn ones. In your example, you probably need to exchange y and yhat in the f1_score function to see the effect since the first argument is the ytrue and the second is ypred

    – saunter
    Jan 2 at 2:47











  • @saunter, I have tried both ways. I am not getting any warning in my Machine. Without warnings.filterwarnings('ignore') I am getting the warning, but with that code I am not getting any warnings.

    – Sreeram TP
    Jan 2 at 9:38













  • You are correct. I tested it again,it worked.

    – saunter
    Jan 3 at 1:36











  • Nice to hear it helped.

    – Sreeram TP
    Jan 3 at 5:08

















Thanks for your info. Actually I have the line "warnings.filterwarnings('ignore')" at the beginning of my code, but still the warning pops out. The reason I guess this "ignore" line only controls warnings of python modules not sklearn ones. In your example, you probably need to exchange y and yhat in the f1_score function to see the effect since the first argument is the ytrue and the second is ypred

– saunter
Jan 2 at 2:47





Thanks for your info. Actually I have the line "warnings.filterwarnings('ignore')" at the beginning of my code, but still the warning pops out. The reason I guess this "ignore" line only controls warnings of python modules not sklearn ones. In your example, you probably need to exchange y and yhat in the f1_score function to see the effect since the first argument is the ytrue and the second is ypred

– saunter
Jan 2 at 2:47













@saunter, I have tried both ways. I am not getting any warning in my Machine. Without warnings.filterwarnings('ignore') I am getting the warning, but with that code I am not getting any warnings.

– Sreeram TP
Jan 2 at 9:38







@saunter, I have tried both ways. I am not getting any warning in my Machine. Without warnings.filterwarnings('ignore') I am getting the warning, but with that code I am not getting any warnings.

– Sreeram TP
Jan 2 at 9:38















You are correct. I tested it again,it worked.

– saunter
Jan 3 at 1:36





You are correct. I tested it again,it worked.

– saunter
Jan 3 at 1:36













Nice to hear it helped.

– Sreeram TP
Jan 3 at 5:08





Nice to hear it helped.

– Sreeram TP
Jan 3 at 5:08


















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53968004%2fhow-to-silence-all-sklearn-warning%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Mossoró

Error while reading .h5 file using the rhdf5 package in R

Pushsharp Apns notification error: 'InvalidToken'