Pandas Flashcards
Learning pandas with brainscap
Oq e uma série, no pandas??
Qual e a sintaxe é como fazer uma?
Uma série e uma tabela de dados unidimensional, ou seja, somente com uma coluna
Sintaxe:
Pd.Series(dados, index=default)
E possível criar uma série a partir de uma lista, dict ou uma tupla
Como pegar somente os valores de uma série ou dataframe?
Podemos utilizar nome da série ou dataframe .values()
Dt.values()
Ser.values()
Como ver somente o Index q estão inclusos em um obj, dataframe ou série?
Usando a função .Index
Dt.index
Ser.index
Sem parêntese, o retorno será dos valores
Função pd.notnull()
pd.isnull()
Em notnull, vai retornar False se for um valor nulo(nan) e True se for um valor diferente de nulo
E isnull vai retornar True se for um valor nulo(nan) e False se o valor for diferente de nulo
Obj.index.name, oq isso significa??
Vai integra como um nome do Index
Vai criar como se fosse um nome, vai ser possível utilizar algumas funções e utilizar os Index
Qual a saída destes comandos:
Obj.head()
Obj.tail()
O primeiro comando, vai mostrar somente as 5 primeiras linha de dataFrame ou série
O segundo comando, atuará de forma semelhante ao primeiro, só q pegara as 5 últimas linhas
Como criar um level em um index
Ex
Obj.groupby(level=”algum nome”)
Podemos usar o comando
Obj.index.names = ‘algum nome”
Aí, podemos atuar pelo level em algumas funções
Como inverter os Index com a coluna ??
1. 2. 3. 4 A. 0. 6. 1. 6 B. 3. 7. 7. 4 C. 4. 2. 1. 3
Usando o método
Obj.T
Como será a saída
Obj.columns
Obj.values
Obj.columns, será uma array contendo somente os nomes das columns
Obj.values, sera uma array contendo os nomes dos somente os valores
Obj.index, será uma array contendo somente os nomes dos Index
Como utilizar a função do pandas reindex??
Reindex pode atuar tanto com axis=1 ou axis=0
Reindex reorganiza o Index ou a coluna da maneira q vc quiser, passando uma lista contendo por onde ele deve organizar
1. 2. 3. 4 A. 0. 6. 1. 6 B. 3. 7. 7. 4 C. 4. 2. 1. 3
Obj.reindex([b, a])
Obj.reindex([4, 1, 3], axis=1)
Como retirar colunas ou linhas de um dataframe??
Poderíamos utilizar o del ou a função drop do pandas
1. 2. 3. 4 A. 0. 6. 1. 6 B. 3. 7. 7. 4 C. 4. 2. 1. 3
Obj.drop(c)
Obj.drop([a, c])
Obj.drop([1, 3, 4], axis=1)
FATIAMENTO:
Qual é a diferença entre, fazer um fatiamento com obj.loc é obj.iloc?
Iloc =faz o slince com números inteiros
Loc= faz o slince com strings
1. 2. 3. 4 A. 0. 6. 1. 6 B. 3. 7. 7. 4 C. 4. 2. 1. 3
Obj.iloc[1, 0]
A saída será o valor 3
Obj.loc[a]
A saída será a linha completa de a [0, 6, 1, 6]
Função add?
Faz uma soma entre obj.
Normalmente, os obj q nao se sobrepõe ficam com o valor nan, mas com essa função, os q não se sobrepõe recebem um valor do outro Df
Como aplicar uma função em um dataframe, série ou array??
Podemos utilizar o aplicador de função unidimensionais, a função appy
Ex:
F = lambda x: x.max() - x.min()
Frame.aply(f)
Função do pandas, sort_index e sort_values??
Como o próprio nome já diz, organiza o Index ou os valores
Podemos passar o axis para ambas, ou também , ascedinding
Função de séries, values_counts(), e função is_unique??
Values_counts(), conta a quantidade de valores q uma série tem, o retorno será de uma série .
Is_unique(), retornar True se os Index do obj são únicos, e False se eles se repetem
FATIAMENTO:
Obj[a] = 6
Obj[obj>0]
Em objeto a linha q o index for a receberá 6
Em objeto os q forem maior q 0 receberá True e os menores False
FATIAMENTO:
1. 2. 3. 4 A. 0. 6. 1. 6 B. 3. 7. 7. 4 C. 4. 2. 1. 3
Obj[4]
Obj.loc[[c, a, b]]
Obj[obj>3]
No primeiro vai pegar a coluna q o nome, seja, 4
No segundo vai pegar os Index na sequência , c, a e b
No último os valores q sejam maior q 3 vao ser True e os demais vão ser False
FATIAMENTO:
One. Two. Three. Four Ohio. 0. 1. 2. 3 Colorado. 4. 5. 6. 7 Utah. 8. 9. 10. 11 New York 12. 13. 14. 15
Data[data > 5] = 0
Data.iloc[:, :3][data.three > 5]
No primeiro, os valores q forem maiores q 5 vão receber 0, os outros vão continuar normais
No segundo exemplo, vai pegar todos os Index, e somente as colunas até o three, depois na coluna three Vai ser exibido somente os valores acima de 5
Como criar um dataframe ??
Com o metodo do pandas.dataframe , podemos usar uma série , uma lista, um dict, um mapeamento, uma array
Métodos matemáticos:
Add = radd Sub = rsub Div= rdiv Floordiv = rflloordiv Mul = rmul Pow = rpow
Qual método podemos combinar qual método para melhorar o desempenho??
Todos funcionam de modo semelhante as operações comuns
O método fill_value, para q as colunas ou Index que não se sobrepõe, recebam um número de nossa escolha
Obj.duplicates()
Obj.drop_duplicates()
No primeiro vai devolver True se for duplicata e False se não não for
No segundo vai dropa a linha q tiver duplicatas
Lembrando q e um método das Séries
Como criar uma série com indexação hierárquica??
Ineex=[[he, dhhr], [hdh, hrh]]
Obj.sort_index()
Organiza os Index em em ordem alfabética ou em seq de números
Como criar um dataframe, com base em uma série com indexação hierarquia??
Usando o método data.unstack(), e fazer ele voltar de novo com o método Stack()