2
respostas

Código do Curso Python com Power BI - apresenta erro

o Código do visual Python no power bi executou no erro. Como poderia ajustar?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

# o código a seguir para criar um dataframe e remover as linhas duplicadas sempre é executado e age como um preâmbulo para o script:

# dataset = pandas.DataFrame(Date, Open, High, Low, Close)
# dataset = dataset.drop duplicates()

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as mticker
import seaborn as sns

# Configurações iniciais de fonte
plt.rcParams['font.family'] = 'sans-serif'
plt.rcParams["font.sans-serif"] = 'Verdana'

def candlestick(date, open, high, low, close):
    fig, ax = plt.subplots(figsize=(30,11), dpi=72, facecolor='#edf3ee') 
    ax.set_facecolor("#edf3ee")

    # Definindo as cores de cada candle
    cores = ["green" if close > open else "red" for close, open in zip(close, open)]

    # Candlestick corpo + pavio
    sns.barplot(x=date, y=np.abs(open-close), bottom-np.min((open,close), axis=0), width-0.8, palette=cores, ax = ax) sns.barplot(x=date, y=high-low, bottom=low, width=0.1, palette=cores, ax = ax)

dataset["Date"] = pd.to_datetime (dataset ["Date"], format="%Y-%m-%dT%H:%M:%S")

candlestick( dataset["Date"], dataset["Open"], dataset["High"], dataset ["Low"], dataset["Close"])

plt.subplots_adjust(left=0.07, bottom=0.05, right=0.95, top=0.95)
plt.show()
2 respostas

o código a seguir para criar um dataframe e remover as linhas duplicadas sempre é executado e age como um preâmbulo para o script:

dataset = pandas.DataFrame(Date, Open, High, Low, Close)

dataset = dataset.drop duplicates()

import pandas as pd import numpy as np import matplotlib.pyplot as plt import matplotlib.ticker as mticker import seaborn as sns

Configurações iniciais de fonte

plt.rcParams['font.family'] = 'sans-serif' plt.rcParams["font.sans-serif"] = 'Verdana'

def candlestick(date, open, high, low, close): fig, ax = plt.subplots(figsize=(30,11), dpi=72, facecolor='#edf3ee') ax.set_facecolor("#edf3ee")

# Definindo as cores de cada candle
cores = ["green" if close > open else "red" for close, open in zip(close, open)]

# Candlestick corpo + pavio
sns.barplot(x=date, y=np.abs(open-close), bottom-np.min((open,close), axis=0), width-0.8, palette=cores, ax = ax) sns.barplot(x=date, y=high-low, bottom=low, width=0.1, palette=cores, ax = ax)

dataset["Date"] = pd.to_datetime (dataset ["Date"], format="%Y-%m-%dT%H:%M:%S")

candlestick( dataset["Date"], dataset["Open"], dataset["High"], dataset ["Low"], dataset["Close"])

plt.subplots_adjust(left=0.07, bottom=0.05, right=0.95, top=0.95) plt.show()

Oii, David! Tudo bem?

Fui verificar o código e realmente o que está na transcrição possui alguns errinhos. Por exemplo, alguns hífens estão no lugar dos sinais de igualdade.

Alterando o código para o correto, ele fica deste modo:

# o código a seguir para criar um dataframe e remover as linhas duplicadas sempre é executado e age como um preâmbulo para o script:

# dataset = pandas.DataFrame(Date, Open, High, Low, Close)
# dataset = dataset.drop_duplicates()

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as mticker
import seaborn as sns

# Configurações iniciais de fonte
plt.rcParams['font.family'] = 'sans-serif'
plt.rcParams["font.sans-serif"] = 'Verdana'

def candlestick(date, open, high, low, close):
    fig, ax = plt.subplots(figsize=(30,11), dpi=72, facecolor='#edf3ee') 
    ax.set_facecolor("#edf3ee")

    # Definindo as cores de cada candle
    cores = ["green" if close > open else "red" for close, open in zip(close, open)]

    # Candlestick corpo + pavio
    sns.barplot(x=date, y=np.abs(open-close), bottom=np.min((open,close), axis=0), width=0.8, palette=cores, ax = ax)
    sns.barplot(x=date, y=high-low, bottom=low, width=0.1, palette=cores, ax = ax)

dataset["Date"] = pd.to_datetime(dataset["Date"], format="%Y-%m-%dT%H:%M:%S")

candlestick(dataset["Date"], dataset["Open"], dataset["High"], dataset["Low"], dataset["Close"])

plt.subplots_adjust(left=0.07, bottom=0.05, right=0.95, top=0.95)
plt.show()

Espero que isso ajude! E obrigada por postar a dúvida, pois já foi relatado ao nosso time e vamos fazer a alteração do código na transcrição.

Abraços e bons estudos! :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.