Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Erro na geração do DataFrame df4

Ao gerar a concatenação dos DataFrames df1, df2, df3 e gerou isso:

Entry point for launching an IPython kernel.
Coluna0    Coluna1    Coluna2    coluna0    coluna1    coluna2
linha0    NaN    NaN    NaN    A    A    A
linha1    NaN    NaN    NaN    A    A    A
linha2    NaN    NaN    NaN    A    A    A
Linha0    B    B    B    NaN    NaN    NaN
Linha1    B    B    B    NaN    NaN    NaN
Linha2    B    B    B    NaN    NaN    NaN
linha0    NaN    NaN    NaN    C    C    C
linha1    NaN    NaN    NaN    C    C    C
linha2    NaN    NaN    NaN    C    C    C

Provavelmente alguma coluna/linha no código foi declarada com alguma diferença, neste caso foi o nome da coluna, que foi declarada com C maiúsculo e outra com C minúsculo. Ou até mesmo algum espaço na hora de nomear a coluna ou linha. Postei isso, pois tive esse problema e não achei solução, e descobri qual seria o erro no caso se aparecer esse output

3 respostas
solução!

Olá Felipe, tudo bem? Espero que sim!

Isso ocorreu porque os DataFrames df1 e df2 foram construídos com nomes de colunas com letra minúscula, enquanto o DataFrame df2 foi feito com o nome das colunas com a primeira letra em maiúsculo.

O código da aula para a construção dos DataFrames é o seguinte:

import pandas as pd

data = [[1, 2, 3], 
        [4, 5, 6], 
        [7, 8, 9]]
index = ['Linha' + str(i) for i in range(3)]
columns = ['Coluna' + str(i) for i in range(3)]
df1 = pd.DataFrame(data = data, index = index, columns = columns)


data = {'Coluna0': {'Linha0': 1, 'Linha1': 4, 'Linha2': 7},
 'Coluna1': {'Linha0': 2, 'Linha1': 5, 'Linha2': 8},
 'Coluna2': {'Linha0': 3, 'Linha1': 6, 'Linha2': 9}}
df2 = pd.DataFrame(data)

data = [(1, 2, 3), 
        (4, 5, 6), 
        (7, 8, 9)]
df3 = pd.DataFrame(data = data, index = index, columns = columns)

df1[df1 > 0] = 'A'
df2[df2 > 0] = 'B'
df3[df3 > 0] = 'C'

df4 = pd.concat([df1, df2, df3])

Veja se em algum dos passos você colocou os nomes em letra minúscula.

Estou à disposição. Bons estudos!

Oi João! Tudo bem e como você? Obrigado pela explicação mais didática. Eu tinha cometido esse erro, e não tinha encontrado nenhuma solução aqui, depois de perceber qual era o problema, postei aqui caso alguém futuramente cometa o mesmo erro. Com a sua explicação agora ficar mais fácil! Obrigado!

PROBLEMA RESOLVIDO

Muito bom, acabou me ajudando tbem.