+4 votes
in Programming Languages by (40.5k points)

In the following code, I am extracting labels from the data and checking whether labels are numerical or not. But the code is throwing an error: "TypeError: not all arguments converted during string formatting".

It seems that it did not like logging.info() code; what is wrong with the logging.info() code?

y = data[data.columns[self.label_pos]].to_numpy()

labels = np.unique(y)

if not isinstance(labels[0], int):  # if one label is char, array will convert all labels to char

    logging.info("Label is not numeric", labels)

    for i in range(len(labels)):

        y[y == labels[i]] = i

return y

1 Answer

+2 votes
by (349k points)
selected by
 
Best answer

Your logging.info() code is wrong. If you want to display labels, you can use format().

Make the following change in your code and it should work:

From

logging.info("Label is not numeric", labels)

to

logging.info("labels are not numeric: {0}".format(labels))


...