2+2
3*3
3**3
# 2+2
Como podemos ver o # fez com o cálculo não tivesse sido feito
a = 3
a
a = 3
b = 5
a + b
a = 3
b = 5
a = 5
a + b
a = 3
b = 3
a == b
a > b
a >= b
3 > 4
def soma():
return 2+2
soma()
def soma(a, b):
return a + b
soma(2, 5)
def soma(a, b):
return a + b
soma()
def divisão(a, b):
return a / b
divisão(10, 2)
divisão(2, 10)
divisão(b=2, a=10)
"Hello World"
a = 3
b = 5
"a mais b é " + str(a+b)
Neste caso str(a+b) está a transformar o 8, que é o resultado de a + b em texto "8" que pode ser somado ao texto "a mais b"
# É 2 maior que 4?
2 > 4
if 2 == 2:
print("É o mesmo número")
if 2 == 3:
print("É o mesmo número")
else:
print("São números diferentes")
def igualdade(a, b):
if a == b:
return "É o mesmo número"
else:
return "São números diferentes"
igualdade(5, 4)
igualdade(4, 4)
numeros = igualdade(4, 4)
numeros
cfs = [1000, 2000, 3000, 4000, 5000]
cfs
import numpy as np
np.array(cfs) + np.array(cfs)
# Seleccionar o primeiro valor da lista
cfs[0]
# Seleccionar o último valor da lista
cfs[-1]
for value in cfs:
print(value * 5)
import pandas as pd
url = "https://s3.us-east-2.amazonaws.com/cbs.pg.repository/data/example_4.xlsx"
df = pd.read_excel(url)[['Mercado', 'Retorno (%)']].dropna()
df
Tirando directamente do exercício 2.4.
Seleccionar uma coluna da dataframe
df[['Mercado']]
Haver dois parênteses rectos é importante e podem aumentar com os nomes das colunas que quiserem seleccionar
df[['Mercado', 'Retorno (%)']]
#!pip install yfinance
import yfinance as yf
def merge_time_series(df_1, df_2, how='outer'):
df = df_1.merge(df_2, how=how, left_index=True, right_index=True)
return df
def normalize(df):
df = df.dropna()
return (df / df.iloc[0]) * 100
def download_yahoo_data(tickers, normalize_quotes=True,
start='1970-01-01', end='2030-12-31'):
quotes=pd.DataFrame()
for ticker in tickers:
df = yf.download(ticker, start=start, end=end, progress=False)
df = df[['Adj Close']]
df.columns=[ticker]
quotes = merge_time_series(quotes, df)
quotes = quotes.ffill()
if normalize_quotes:
quotes = normalize(quotes)
return quotes
quotes = download_yahoo_data(tickers=['SPY', 'DIA'], start='1999-12-31', end='2021-12-31')
quotes
# Mensais
# Uma vez que o que queremos é o último dia do mês vamos fazer resample com last()
quotes = quotes.resample('M').last()
quotes
# Anuais
# Uma vez que o que queremos é o último dia do ano vamos fazer resample com last()
quotes = quotes.resample('A').last()
quotes