Você está aqui: Python ::: Pandas Python Library (Biblioteca Python Pandas) ::: Input e Output (Entrada e Saída) |
Como usar o método read_csv() do Pandas da linguagem Python para carregar um dataset e retorná-lo como um DataFrameQuantidade de visualizações: 5033 vezes |
Quando estamos desenvolvendo soluções em Data Science ou Machine Learning, é comum precisarmos carregar dados contidos em arquivos .csv (nos quais os registros são separados por vírgulas ou ponto-e-vírgula). Para isso podemos usar o método read_csv() da biblioteca Pandas do Python. Veja um exemplo no qual usamos o método read_csv() para carregar um dataset e depois exibir o DataFrame resultante. Para isso usaremos uma amostra de dados de empréstimos aprovados ou recusados. O arquivo .csv pode ser baixado aqui. Eis o código: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # importamos a biblioteca Pandas import pandas as pd def main(): # vamos carregar os dados do arquivo .csv dados = pd.read_csv("C:\\estudos_python\\emprestimos.csv", delimiter=";") # vamos mostrar o DataFrame resultante print(dados) if __name__== "__main__": main() Quando executarmos este código nós teremos um resultado parecido com: id nome idade sexo renda valor parc pont ap 0 1 MIGUEL728 24 M 1800 12500 30 34 S 1 2 RAUL46 61 M 2300 10000 24 59 S 2 3 JONAS264 28 M 800 12500 36 59 N 3 4 LETICIA135 71 F 1800 10000 36 13 N 4 5 CARLOS931 60 F 4000 2000 6 10 N .. ... ... ... ... ... ... ... ... .. 9 96 ANGELA391 91 F 4000 12500 12 33 N 96 97 PEDRO764 50 M 10200 2500 12 1 N 97 98 ADRIANA175 41 F 4000 2000 36 77 S 98 99 ROSA666 42 F 1800 20000 24 74 N 99 100 SARA653 36 F 970 11000 12 42 N [100 rows x 9 columns] Note que aqui nós temos uma amostra de 100 registros e cada registro possui 9 colunas. Se você quiser ver todos os 100 registros, troque a linha: print(dados) por print(dados.to_string()) Para finalizar, note que forneci ";" como delimitador para o método read_csv(). |
![]() |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico |
Exercício Resolvido de Python - Ler um número inteiro na faixa 0-999 e mostrar a soma de seus dígitos - Apostila de Python BásicoQuantidade de visualizações: 3038 vezes |
Pergunta/Tarefa: Escreva um programa Python que leia um inteiro na faixa 0-999 e mostre a soma de seus dígitos. Por exemplo, se o valor for 523, a soma de seus dígitos será 5 + 2 + 3 = 10. Lembre-se que você deverá usar apenas os operadores matemáticos e o operador de módulo (%). Seu programa deverá exibir a seguinte saída: Informe um valor de 0 até 999: 821 A soma dos dígitos é: 11 Veja a resolução comentada deste exercício usando Python console: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # função principal do programa def main(): # vamos solicitar ao usuário que informe um valor inteiro # na faixa 0 a 999 (incluindo) valor = int(input("Informe um valor de 0 até 999: ")) # vamos verificar se o valor está na faixa permitida if(valor < 0 or valor > 999): print("Valor fora da faixa permitida") else: # vamos obter o terceiro dígito terceiro = valor % 10 # obtém os digitos restantes valor = valor // 10 # vamos obter o segundo dígito segundo = valor % 10 # obtém os digitos restantes valor = valor // 10 # vamos obter o primeiro dígito primeiro = valor % 10 # obtém os digitos restantes valor = valor // 10 # vamos obter a soma dos dígitos soma = terceiro + segundo + primeiro # vamos mostrar o resultado print("A soma dos dígitos é:", soma) if __name__== "__main__": main() |
Python ::: Dicas & Truques ::: Data e Hora |
Como retornar a hora em Python como um decimal no intervalo 00-23 (formato 24 horas) usando o sinalizador %HQuantidade de visualizações: 7125 vezes |
Como retornar a hora em Python como um decimal no intervalo 00-23 (formato 24 horas) usando o sinalizador %H Nesta dica mostrarei como podemos obter a data atual em Python usando a função today() do objeto datetime e em seguida retornar a hora como um decimal no intervalo 00-23 (formato 24 horas) usando a função strftime() e o sinalizador %H. Veja o código Python completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- from datetime import datetime # função principal do programa def main(): # Obtém um datetime da data e hora atual hoje = datetime.today() # Exibe a hora atual como um decimal print("A hora é: {0}".format(hoje.strftime("%H"))) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: A hora é: 11 |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercício Resolvido de Python - Uma classe para representar uma pessoa, com os atributos privados de nome, data de nascimento e alturaQuantidade de visualizações: 9472 vezes |
Pergunta/Tarefa: Crie uma classe para representar uma pessoa, com os atributos privados de nome, data de nascimento e altura. Crie os métodos públicos necessários para sets e gets e também um método para imprimir todos dados de uma pessoa. Crie um método para calcular a idade da pessoa. A data de nascimento pode ser informada como uma String (no formato 05/10/1982, por exemplo) e, no cálculo da idade, considere apenas o ano da data de nascimento informada. Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Python console: Código para a classe Pessoa (pessoa.py): ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- from datetime import datetime class Pessoa: # construtor da classe Pessoa def __init__(self, nome, data_nascimento, altura): self._nome = nome self._data_nascimento = data_nascimento self._altura = altura # método que imprime todos os dados da pessoa def imprimir_dados(self): print("Nome:", self._nome, "\nData de Nascimento:" , self._data_nascimento, "\nAltura:", self._altura) # método que calcula a idade da pessoa def calcular_idade(self): # vamos obter o ano da data de hoje ano_data_atual = datetime.today().year # agora vamos obter o ano de nascimento da pessoa partes_data_nascimento = self._data_nascimento.split("/") ano_nascimento = partes_data_nascimento[2] # agora mostramos a idade da pessoa anos = ano_data_atual - int(ano_nascimento) print("A pessoa tem", anos, "anos.") # método que define o nome da pessoa def set_nome(self, nome): self._nome = nome # método que obtém o nome da pessoa def get_nome(self): return self._nome # método que define a data de nascimento da pessoa def set_data_nascimento(self, data_nascimento): self._data_nascimento = data_nascimento # método que obtém a data de nascimento da pessoa def get_data_nascimento(self): return self._data_nascimento # método que define a altura da pessoa def set_altura(self, altura): self._data_altura = altura # método que obtém a altura da pessoa def get_altura(self): return self._altura Código para o arquivo principal.py: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # importa a classe Pessoa from pessoa import Pessoa def main(): # cria um novo objeto da classe Pessoa pessoa = Pessoa("Amanda Rodrigues", "12/03/1972", 1.65) # exibe os dados da pessoa pessoa.imprimir_dados() # mostra a idade da pessoa pessoa.calcular_idade() if __name__== "__main__": main() |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes) |
Como gerar um vetor com valores igualmente espaçados usando a função linspace() da biblioteca NumPy do Python - Python NumPy para EngenhariaQuantidade de visualizações: 2549 vezes |
Em algumas situações nós precisamos de vetores e matrizes com valores igualmente espaçados entre um determinado intervalo. Para isso nós podemos usar a função linspace() da biblioteca NumPy do Python. Esta função exige, entre vários argumentos, o início e o fim do intervalo. Vamos ver um exemplo? Observe o trecho de código a seguir: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # vamos importar a biblioteca NumPy import numpy as np def main(): valores = np.linspace(2, 5, num=10) print("O vetor gerado foi: ", valores) if __name__== "__main__": main() Este código Python vai gerar o seguinte resultado: O vetor gerado foi: [2. 2.33333333 2.66666667 3. 3.33333333 3.66666667 4. 4.33333333 4.66666667 5. ] Note que informamos o valor inicial como 2 e o valor final como 5, e definimos a quantidade de elementos gerados como 10 (se omitida, 50 valores serão gerados). Se não quisermos que o valor final do intervalo seja incluído na amostra, basta informamos endpoint=False como argumento para a função linspace(). |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes) |
Como retornar a quantidade de linhas e colunas de um vetor ou matriz usando a propriedade shape do objeto ndarray da biblioteca NumPy do PythonQuantidade de visualizações: 2757 vezes |
Podemos usar a propriedade shape do objeto ndarray da biblioteca NumPy para obter a quantidade de linhas e colunas em um vetor ou matriz. Para um vetor, o retorno será a quantidade de colunas seguida por uma vírgula. Para matrizes, a propriedade retornará a quantidade de linhas e colunas. Veja:---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # importamos a bibliteca NumPy import numpy as np def main(): # vamos criar um vetor com 8 elementos vetor = np.array([5, 1, 10, 7, 2, 3, 9, 4]) # vamos mostrar a quantidade de linhas e colunas nesse vetor print("Linhas e colunas no vetor:", vetor.shape) # agora vamos criar uma matriz de 2 linhas e 4 colunas matriz = np.array([[8, 51, 2, 35], [90, 42, 0, 71]]) # vamos mostrar a quantidade de linhas e colunas nessa matriz print("Linhas e colunas na matriz:", matriz.shape) if __name__== "__main__": main() Ao executarmos este código nós teremos o seguinte resultado: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- Linhas e colunas no vetor: (8,) Linhas e colunas na matriz: (2, 4) Além de usar a propriedade shape do objeto ndarray, nós podemos também efetuar uma chamada ao método global shape() da NumPy. Veja: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # importamos a bibliteca NumPy import numpy as np def main(): # vamos criar um vetor com 8 elementos vetor = np.array([5, 1, 10, 7, 2, 3, 9, 4]) # vamos mostrar a quantidade de linhas e colunas nesse vetor print("Linhas e colunas no vetor:", np.shape(vetor)) # agora vamos criar uma matriz de 2 linhas e 4 colunas matriz = np.array([[8, 51, 2, 35], [90, 42, 0, 71]]) # vamos mostrar a quantidade de linhas e colunas nessa matriz print("Linhas e colunas na matriz:", np.shape(matriz)) if __name__== "__main__": main() Execute e veja que o resultado é o mesmo para ambos os códigos. |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Exercício Resolvido de Python - Um método recursivo que conta de 0 até 10Quantidade de visualizações: 1268 vezes |
Exercícios Resolvidos de Python - Um método recursivo que conta de 0 até 10 Pergunta/Tarefa: Escreva um método recursivo que conta e exibe os valores de 0 até 10. Seu método deverá possuir a seguinte assinatura: def contar_recursivamente(n): # sua implementação aqui Sua saída deverá ser parecida com: 0 1 2 3 4 5 6 7 8 9 10 Veja a resolução comentada deste exercício usando Python: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # método recursivo que conta de 0 até 10 def contar_recursivamente(n): # vamos exibir o número atual print(n, " ", end =" ") # devemos prosseguir com a recursividade? if n < 10: # incrementa o valor de n n = n + 1 contar_recursivamente(n) # e faz uma nova chamada recursiva # método principal def main(): # efetua uma chamada ao método recursivo fornecendo o primeiro valor contar_recursivamente(0) if __name__== "__main__": main() |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Fenômenos dos Transportes, Hidráulica e Drenagem |
Exercício Resolvido de Python - Como calcular Vazão Volumétrica, Vazão Mássica e Vazão em Peso usando Python - Python para Fenômenos dos Transportes e HidráulicaQuantidade de visualizações: 49 vezes |
Pergunta/Tarefa: Uma torneira enche de água um tanque em 2 horas e 20 segundos. Determine a vazão em volume, em massa e em peso em unidades do SI. Considere que a densidade da água é igual a 1000 kg/m3 e g = 9,8 m/s2. Considere também que a capacidade do tanque é de 10 mil litros. Sua saída deverá ser parecida com: Informe a quantidade de horas: 2 Informe a quantidade de segundos: 20 Informe a capacidade do tanque (litros): 10000 Informe a densidade da água (kg/m3): 1000 Informe a força da gravidade (m/s2): 9.8 Total de segundos: 7220 Capacidade do tanque: 10.0 m3 Vazão Volumétrica: 0.0013850415512465374 m3/s Vazão Mássica: 1.3850415512465375 kg/s Vazão em Peso: 13.57340720221607 N/s Para obter a Vazão Volumétrica, que representa a quantidade de volume que atravessa uma região em um determinado intervalo de tempo, nós vamos usar a seguinte fórmula: \[Q_v = \frac{V}{T} \] Onde: Qv = vazão volumétrica em metros cúbicos por segundo (m3/s); V = o volume do fluido em metros cúbicos (m3); T = o tempo em segundos (s). Para obter a Vazão Mássica, que representa a quantidade de massa que atravessa uma região em um determinado intervalo de tempo, nós vamos usar a seguinte fórmula: \[Q_m = \frac{M}{T} \] Onde: Qm = vazão mássica em quilos por segundo (kg/s); M = a massa do fluido em quilos (kg); T = o tempo em segundos (s). Para a Vazão em Peso nós só precisamos multiplicar a Vazão Mássica pelo peso da gravidade, ou seja, 9.8. Dessa forma, a Vazão em Peso é dada em N/s. Obs.: No código eu mostro como converter horas em segundos e litros em m3. Veja a resolução completa para o exercício em Python, comentada linha a linha: ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # método principal def main(): # vamos ler a quantidade de horas e segundos hora = int(input("Informe a quantidade de horas: ")) segundos = int(input("Informe a quantidade de segundos: ")) # agora vamos ler a capacidade do tanque em litros capacidade_tanque = int(input("Informe a capacidade do tanque (litros): ")) # vamos ler a densidade da água densidade_agua = float(input("Informe a densidade da água (kg/m3): ")) # vamos ler a força da gravidade gravidade = float(input("Informe a força da gravidade (m/s2): ")) # vamos calcular o total de segundos segundos_hora = 3600 total_segundos = (2 * segundos_hora) + segundos # vamos converter a capacidade do tanque de litros para m3 volume = capacidade_tanque / 1000.0 # vamos calcular a vazão volumétrica vazao_volumetrica = volume / total_segundos # vamos calcular a vazão mássica vazao_massica = vazao_volumetrica * densidade_agua # vamos calcular a vazão em peso vazao_peso = vazao_massica * gravidade # e mostramos o resultado print("\nTotal de segundos: {0}".format(total_segundos)) print("Capacidade do tanque: {0} m3".format(volume)) print("Vazão Volumétrica: {0} m3/s".format(vazao_volumetrica)) print("Vazão Mássica: {0} kg/s".format(vazao_massica)) print("Vazão em Peso: {0} N/s".format(vazao_peso)) if __name__== "__main__": main() |
Python ::: Python para Engenharia ::: Hidrologia e Hidráulica |
Como calcular o volume de chuvas em Python - Fórmula do cálculo do volume de chuvas em PythonQuantidade de visualizações: 275 vezes |
O estudo da Hidrologia passa, necessariamente, pelo cálculo do volume de chuvas em uma determinada região, ou bacia hidrológica. Assim, é comum ouvirmos alguém dizer que, em um determinado local, choveu 100 mm durante um determinado período. Mas o que isso significa? O mês mais chuvoso em Goiânia é dezembro, com média de 229 milímetros de precipitação de chuva. Isso significa que, em uma área de 1 m2, a lâmina de água formada pela chuva que cai apresenta uma altura de 229 milímetros. Como sabemos que o volume é a área multiplicada pela altura, tudo que temos a fazer é considerar a área de 1 m2 multiplicada pela altura da lâmina de água (convertida também para metros). Veja a fórmula: \[\text{Volume} = \text{(Área da Base) x Altura}\] Lembre-se de que volume pode ser retornado em litros, ou seja, 1 m3 = 1000 litros. Veja agora o código Python completo que pede para o usuário informar a precipitação da chuva, ou seja, a altura da lâmina de água em milímetros e retorna o volume de água em litros. ---------------------------------------------------------------------- Se precisar de ajuda para ajustar o código abaixo de acordo com as suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar) Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar a manter o site livre de anúncios. Ficaremos eternamente gratos ;-) Nosso PIX é: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # função principal do programa def main(): # vamos pedir para o usuário informar a altura da lâmina # de água em milímetros altura_lamina = float(input("Altura da lâmina de água em milímetros: ")) # o primeiro passo é converter os milímetros da lâmina de água # para metros altura_lamina = altura_lamina / 1000 # agora que já temos a altura da lâmina em metros, vamos multiplicar # pela base (1 metro quadrado) para obtermos o volume da chuva por # metro quadrado volume_chuva = (altura_lamina * 1.00) * 1000 # vamos mostrar o resultado print("O volume da chuva é: {0} litros para cada metro quadrado".format(volume_chuva)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Altura da lâmina de água em milímetros: 229 O volume da chuva é: 229.0 litros para cada metro quadrado Qual é o volume de 1 mm de chuva? A altura pluviométrica é a espessura da lâmina d'água precipitada que cobre a região atingida pela chuva. Geralmente a unidade de medição é o milímetro (mm) porque o aparelho que mede a chuva, o pluviômetro, é lido em milímetros. O pluviômetro é um aparelho meteorológico destinado a medir, em milímetros, a altura da lâmina de água gerada pela chuva que caiu numa área de 1 m2. 1 mm de chuva equivale a 1 litro de água, ou 1 dm3, considerando a área de 1 m2. |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
JavaScript - Como arredondar um valor numérico de ponto-flutuante para cima usando a função ceil() do objeto Math do JavaScript |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |