no numeric data to plot ошибка - не понимаю как исправить

Рейтинг: 0Ответов: 1Опубликовано: 30.03.2023

Только-только начала изучать рекуррентные нейронные сети, но столкнулся с проблемой файла, которую не могу решить, не понимаю в чём ошибка(

import tensorflow as tf

import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
import os
import pandas as pd

from google.colab import drive
drive.mount('/content/drive')

mpl.rcParams['figure.figsize'] = (8, 6)
mpl.rcParams['axes.grid'] = False
data = pd.read_csv('/content/drive/MyDrive/Colab Notebooks/Новая таблица - тест66.csv')
#fixed_data = pd.read_csv('/content/drive/MyDrive/Colab Notebooks/Новая таблица - тест66.csv', sep=';', decimal=",", encoding='latin1') #это тоже попробовал

И всё вроде бы идёт хорошо, т.е. все циклы и условия проходят без ошибок до момента:

uni_data = data['Date']
uni_data.index = data['SUM']
uni_data.head()
uni_data.plot(subplots=True)

Несколько раз изменял форматы файла, сёрфил гугл, но ошибка висит постоянно одна и та же. Сам файл по типу:

SUM
0.00       01.01.2017
0.00       02.01.2017
0.00       03.01.2017
0.00       04.01.2017
1270.94    05.01.2017
Name: Date, dtype: object

Сама развёрнутая ошибка:

TypeError                                 Traceback (most recent call last)
<ipython-input-21-901cf9b83b24> in <cell line: 1>()
----> 1 uni_data.plot(subplots=True)

3 frames
/usr/local/lib/python3.9/dist-packages/pandas/plotting/_core.py in __call__(self, *args, **kwargs)
    970                     data.columns = label_name
    971 
--> 972         return plot_backend.plot(data, kind=kind, **kwargs)
    973 
    974     __call__.__doc__ = __doc__

/usr/local/lib/python3.9/dist-packages/pandas/plotting/_matplotlib/__init__.py in plot(data, kind, **kwargs)
     69             kwargs["ax"] = getattr(ax, "left_ax", ax)
     70     plot_obj = PLOT_CLASSES[kind](data, **kwargs)
---> 71     plot_obj.generate()
     72     plot_obj.draw()
     73     return plot_obj.result

/usr/local/lib/python3.9/dist-packages/pandas/plotting/_matplotlib/core.py in generate(self)
    325     def generate(self):
    326         self._args_adjust()
--> 327         self._compute_plot_data()
    328         self._setup_subplots()
    329         self._make_plot()

/usr/local/lib/python3.9/dist-packages/pandas/plotting/_matplotlib/core.py in _compute_plot_data(self)
    504         # no non-numeric frames or series allowed
    505         if is_empty:
--> 506             raise TypeError("no numeric data to plot")
    507 
    508         self.data = numeric_data.apply(self._convert_to_ndarray)

TypeError: no numeric data to plot

Уже ни на что не надеюсь, но прошу помощи, уже голова идёт кругом.

Ответы

▲ 0Принят

Проблема решилась сама собой - дело было не в файле, а ошибке в

uni_data = data['Date']
uni_data.index = data['SUM']
uni_data.head()
uni_data.plot(subplots=True)

где я ошибся в вычисляемых значениях (в uni_data нужно было вставить значение SUM, а в uni_data.index соответственно Date