I'm beginner in python so please bare with me. I'm trying to solve one machine learning problem using GaussianNB. I've certain fields which are not in proper date format, so I converted it into UNIX format. For example column
state_changed_at has value in csv as
1449619185. I'm converting it into proper date format.
Now the problem is, when I'm selecting those date features to train my model, it gives me an error:
Could not convert string to float: 'Thu Apr 16 23:58:58 2015'
import pandas as pd import numpy as np from sklearn import metrics from sklearn.naive_bayes import BernoulliNB from sklearn.naive_bayes import MultinomialNB import time from sklearn.naive_bayes import GaussianNB train = pd.read_csv("datasets/train2.csv") test = pd.read_csv("datasets/test.csv") train.head() import time # state_changed_at,deadline,created_at,launched_at are date time fields # and I'm converting it into unix format unix_cols = ['deadline','state_changed_at','launched_at','created_at'] for x in unix_cols: train[x] = train[x].apply(lambda k: time.ctime(k)) test[x] = test[x].apply(lambda k: time.ctime(k)) # state_changed_at,deadline,created_at,launched_at are date time fields. cols_to_use = ['keywords_len' ,'keywords_count','state_changed_at','deadline','created_at','launched_at'] target = train['final_status'] # data for modeling k_train = train[cols_to_use] k_test = test[cols_to_use] gnb = GaussianNB() model = MultinomialNB() model.fit(k_train, target) # this lines gives me error saying: could not convert string to float: 'Thu Apr 16 23:58:58 2015' expected = target predicted = model.predict(k_test) print(model.score(k_test, predicted, sample_weight=None))
Any help would be really appreciated. Thank you