TypeError while using predict_proba on a previously built model












0















I trained and saved a model as below



filename = 'finalized_model.sav'
pickle.dump(rf, open(filename, 'wb'))


Now I am writing a webservice where I am getting a test dataset, so I load the model and predict probability



def getCuisine():
content=jsonify(request.json)
test = pd.io.json.json_normalize(request.json)
tfidf_vect = pickle.load(open("vectorizer.pickle", "rb"))
test['ingredients'] = [str(map(makeString, x)) for x in test['ingredients']]
test_transform = tfidf_vect.transform(test['ingredients'].values)
le = preprocessing.LabelEncoder()
X_test = test_transform
y_test = le.fit_transform(test['cuisine'].values)

# load the model
filename = 'finalized_model.sav'
loaded_model = pickle.load(open(filename, 'rb'))
#predict
predicted_labels = loaded_model.predict_proba(X_test)


But I am getting error



TypeError: '<' not supported between instances of 'NoneType' and 'int' 


in line predicted_labels = loaded_model.predict_proba(X_test)



What am I missing?



EDIT:



Based on the comments, I tried below



content=request.json()
test = pd.io.json.json_normalize(content)


But then I get error TypeError: 'list' object is not callable . See the sample input below.



Nonetheless don't think the issue is with reading the request. I tried panda's read with a local file as below but still getting the original error TypeError: '<' not supported between instances of 'NoneType' and 'int'



test = pd.read_json('./test.json')


Sample input



[
{
"id": 25693,
"cuisine": "southern_us",
"ingredients": [
"plain flour",
"ground pepper",
"salt",
"tomatoes",
"ground black pepper",
"thyme",
"eggs",
"green tomatoes",
"yellow corn meal",
"milk",
"vegetable oil"
]
}
]









share|improve this question

























  • It should be request.json()

    – coldspeed
    Nov 25 '18 at 18:54











  • @coldspeed not sure what you meant?

    – nad
    Nov 25 '18 at 18:59











  • Note the brackets in the comment, and then compare it with your code.

    – Vivek Kumar
    Nov 26 '18 at 8:02











  • @VivekKumar see the edits

    – nad
    Nov 26 '18 at 16:48
















0















I trained and saved a model as below



filename = 'finalized_model.sav'
pickle.dump(rf, open(filename, 'wb'))


Now I am writing a webservice where I am getting a test dataset, so I load the model and predict probability



def getCuisine():
content=jsonify(request.json)
test = pd.io.json.json_normalize(request.json)
tfidf_vect = pickle.load(open("vectorizer.pickle", "rb"))
test['ingredients'] = [str(map(makeString, x)) for x in test['ingredients']]
test_transform = tfidf_vect.transform(test['ingredients'].values)
le = preprocessing.LabelEncoder()
X_test = test_transform
y_test = le.fit_transform(test['cuisine'].values)

# load the model
filename = 'finalized_model.sav'
loaded_model = pickle.load(open(filename, 'rb'))
#predict
predicted_labels = loaded_model.predict_proba(X_test)


But I am getting error



TypeError: '<' not supported between instances of 'NoneType' and 'int' 


in line predicted_labels = loaded_model.predict_proba(X_test)



What am I missing?



EDIT:



Based on the comments, I tried below



content=request.json()
test = pd.io.json.json_normalize(content)


But then I get error TypeError: 'list' object is not callable . See the sample input below.



Nonetheless don't think the issue is with reading the request. I tried panda's read with a local file as below but still getting the original error TypeError: '<' not supported between instances of 'NoneType' and 'int'



test = pd.read_json('./test.json')


Sample input



[
{
"id": 25693,
"cuisine": "southern_us",
"ingredients": [
"plain flour",
"ground pepper",
"salt",
"tomatoes",
"ground black pepper",
"thyme",
"eggs",
"green tomatoes",
"yellow corn meal",
"milk",
"vegetable oil"
]
}
]









share|improve this question

























  • It should be request.json()

    – coldspeed
    Nov 25 '18 at 18:54











  • @coldspeed not sure what you meant?

    – nad
    Nov 25 '18 at 18:59











  • Note the brackets in the comment, and then compare it with your code.

    – Vivek Kumar
    Nov 26 '18 at 8:02











  • @VivekKumar see the edits

    – nad
    Nov 26 '18 at 16:48














0












0








0








I trained and saved a model as below



filename = 'finalized_model.sav'
pickle.dump(rf, open(filename, 'wb'))


Now I am writing a webservice where I am getting a test dataset, so I load the model and predict probability



def getCuisine():
content=jsonify(request.json)
test = pd.io.json.json_normalize(request.json)
tfidf_vect = pickle.load(open("vectorizer.pickle", "rb"))
test['ingredients'] = [str(map(makeString, x)) for x in test['ingredients']]
test_transform = tfidf_vect.transform(test['ingredients'].values)
le = preprocessing.LabelEncoder()
X_test = test_transform
y_test = le.fit_transform(test['cuisine'].values)

# load the model
filename = 'finalized_model.sav'
loaded_model = pickle.load(open(filename, 'rb'))
#predict
predicted_labels = loaded_model.predict_proba(X_test)


But I am getting error



TypeError: '<' not supported between instances of 'NoneType' and 'int' 


in line predicted_labels = loaded_model.predict_proba(X_test)



What am I missing?



EDIT:



Based on the comments, I tried below



content=request.json()
test = pd.io.json.json_normalize(content)


But then I get error TypeError: 'list' object is not callable . See the sample input below.



Nonetheless don't think the issue is with reading the request. I tried panda's read with a local file as below but still getting the original error TypeError: '<' not supported between instances of 'NoneType' and 'int'



test = pd.read_json('./test.json')


Sample input



[
{
"id": 25693,
"cuisine": "southern_us",
"ingredients": [
"plain flour",
"ground pepper",
"salt",
"tomatoes",
"ground black pepper",
"thyme",
"eggs",
"green tomatoes",
"yellow corn meal",
"milk",
"vegetable oil"
]
}
]









share|improve this question
















I trained and saved a model as below



filename = 'finalized_model.sav'
pickle.dump(rf, open(filename, 'wb'))


Now I am writing a webservice where I am getting a test dataset, so I load the model and predict probability



def getCuisine():
content=jsonify(request.json)
test = pd.io.json.json_normalize(request.json)
tfidf_vect = pickle.load(open("vectorizer.pickle", "rb"))
test['ingredients'] = [str(map(makeString, x)) for x in test['ingredients']]
test_transform = tfidf_vect.transform(test['ingredients'].values)
le = preprocessing.LabelEncoder()
X_test = test_transform
y_test = le.fit_transform(test['cuisine'].values)

# load the model
filename = 'finalized_model.sav'
loaded_model = pickle.load(open(filename, 'rb'))
#predict
predicted_labels = loaded_model.predict_proba(X_test)


But I am getting error



TypeError: '<' not supported between instances of 'NoneType' and 'int' 


in line predicted_labels = loaded_model.predict_proba(X_test)



What am I missing?



EDIT:



Based on the comments, I tried below



content=request.json()
test = pd.io.json.json_normalize(content)


But then I get error TypeError: 'list' object is not callable . See the sample input below.



Nonetheless don't think the issue is with reading the request. I tried panda's read with a local file as below but still getting the original error TypeError: '<' not supported between instances of 'NoneType' and 'int'



test = pd.read_json('./test.json')


Sample input



[
{
"id": 25693,
"cuisine": "southern_us",
"ingredients": [
"plain flour",
"ground pepper",
"salt",
"tomatoes",
"ground black pepper",
"thyme",
"eggs",
"green tomatoes",
"yellow corn meal",
"milk",
"vegetable oil"
]
}
]






python machine-learning scikit-learn






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 26 '18 at 16:48







nad

















asked Nov 25 '18 at 18:48









nadnad

61231428




61231428













  • It should be request.json()

    – coldspeed
    Nov 25 '18 at 18:54











  • @coldspeed not sure what you meant?

    – nad
    Nov 25 '18 at 18:59











  • Note the brackets in the comment, and then compare it with your code.

    – Vivek Kumar
    Nov 26 '18 at 8:02











  • @VivekKumar see the edits

    – nad
    Nov 26 '18 at 16:48



















  • It should be request.json()

    – coldspeed
    Nov 25 '18 at 18:54











  • @coldspeed not sure what you meant?

    – nad
    Nov 25 '18 at 18:59











  • Note the brackets in the comment, and then compare it with your code.

    – Vivek Kumar
    Nov 26 '18 at 8:02











  • @VivekKumar see the edits

    – nad
    Nov 26 '18 at 16:48

















It should be request.json()

– coldspeed
Nov 25 '18 at 18:54





It should be request.json()

– coldspeed
Nov 25 '18 at 18:54













@coldspeed not sure what you meant?

– nad
Nov 25 '18 at 18:59





@coldspeed not sure what you meant?

– nad
Nov 25 '18 at 18:59













Note the brackets in the comment, and then compare it with your code.

– Vivek Kumar
Nov 26 '18 at 8:02





Note the brackets in the comment, and then compare it with your code.

– Vivek Kumar
Nov 26 '18 at 8:02













@VivekKumar see the edits

– nad
Nov 26 '18 at 16:48





@VivekKumar see the edits

– nad
Nov 26 '18 at 16:48












0






active

oldest

votes











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%2f53470754%2ftypeerror-while-using-predict-proba-on-a-previously-built-model%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















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%2f53470754%2ftypeerror-while-using-predict-proba-on-a-previously-built-model%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

Wiesbaden

Marschland

Dieringhausen