In [4]:
import sys
import numpy as np
import pandas as pd
print(sys.version) # Versao do python - Opcional
print(np.__version__) # VErsao do modulo numpy - Opcional
import matplotlib
import matplotlib.pyplot as plt
%matplotlib inline
import datetime
import time
In [5]:
# Carregando dados no dataframe df_dados a partir do arquivo .csv em servidor remoto.
#df_dados = pd.read_csv('http://fortran-zrhans.c9.io/csdapy/sr311-2014.csv', index_col=None)
#Dados local
df_dados = pd.read_csv('../dados/sr311-2015.csv', index_col=None, parse_dates=['Timestamp'])
#df_dados.columns
del(df_dados['Unnamed: 0'])
df_dados.set_index('Timestamp', inplace=True)
df_dados = df_dados[['AirTC', 'RH', 'Rain_mm']]
print("Ok")
In [7]:
df_dados = df_dados.dropna()
df_dados
#s_chuva = df_dados.Rain_mm
Out[7]:
In [43]:
#s_chuva.cumsum()
In [8]:
plt.figure(figsize=(16,8))
df_dados.AirTC.plot()
df_dados.RH.plot()
Out[8]:
In [18]:
#df_dados.index.min(), df_dados.index.max(),
## (Timestamp('2015-01-01 00:00:00'), Timestamp('2015-05-29 10:00:00'))
# Criando um novo dominio continuo com base no inicio e fim da serie de dados original
d = pd.DataFrame(index=pd.date_range(pd.datetime(2015,1,1), pd.datetime(2015,5,29)))
In [29]:
# Unindo os dois DataFrames pela esquerda (o que não houver em d será substituído por NaN
ndf_dados = d.join(df_dados)
#ndf_dados.fillna(0) #Substitui valor NaN por 0
In [30]:
plt.figure(figsize=(16,8))
ndf_dados.AirTC.plot()
ndf_dados.RH.plot()
Out[30]:
In [42]:
plt.figure(figsize=(16,8))
plt.ylabel('Chuva')
ndf_dados.Rain_mm.plot()
Out[42]:
In [31]:
ndf_dados.head()
#Exportando para um novo arquivo
ndf_dados.to_csv('sao_roque_2015-AirTC-RH-Rain.csv')
Elaborado por Hans Rogerio Zimermann com bases no curso Data Analysis in Python with Pandas de Bill Chambers - UDEMY.