Как я могу построить Excel большой набор данных с Matplotlib, не начиная с первого индекса - PullRequest
0 голосов
/ 11 июля 2019

Я хочу построить данные Excel с меткой времени и другим столбцом. х = Время у = 'найти'

Excel выглядит так:

Read_in.xlsx:

Index    Timestamp              Find
0                             
1                              *useless information*
2        Timestamp             *useless information'  
3      2012-07-16 12:00:00      2,31
4      2012-07-16 12:05:00      2,33
5      2012-07-16 12:10:00      2,22
...
1447    2012-07-21 12:00:00     2,44

Я пробовал следующий код:

import pandas as pd
import matplotlib.pyplot as plt

datei= pd.read_excel('Read_in.xlsx', sheet_name= 'Data')

daten=datei.filter(regex='Find')
Time=datei['Timestamp']
Time=Time.dropna(axis=0)
Time=Time.to_string()

x=Time
y= daten
plt.plot(x,y)

ValueError: x и y должны иметь одинаковое первое измерение, но иметь формы (1,) и (1448, 2)

! [1]: https://i.stack.imgur.com/iP4To.jpg

1 Ответ

0 голосов
/ 11 июля 2019

Вы можете использовать to_datetime с errors='coerce' для замены значений даты и времени на NaT, а затем to_numeric для замены , на .:

datei['Timestamp'] = pd.to_datetime(datei['Timestamp'], errors='coerce')
datei['Find'] = pd.to_numeric(datei['Find'].str.replace(',','.'), errors='coerce')
#if format of numbesr is 2.31 
#datei['Find'] = pd.to_numeric(datei['Find'], errors='coerce')
datei = datei.dropna()
print (datei)
            Timestamp  Find
3 2012-07-16 12:00:00  2.31
4 2012-07-16 12:05:00  2.33
5 2012-07-16 12:10:00  2.22

datei.plot(x='Timestamp', y='Find')

Или:

x=datei['Timestamp']
y= datei['Find']
plt.plot(x,y)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...