-
Apresentação
Apresentação
Nesta Unidade Curricular (UC), mergulhamos nas bases essenciais da programação aplicada à Ciência de Dados. Aprimoramos habilidades na criação de algoritmos e na construção de estruturas de dados em Python, capacitando para a manipulação (extração, transformação, armazenamento) e análise de dados, o cerne da Ciência de Dados. Estrategicamente situada no primeiro semestre do mestrado, esta UC fomenta habilidades cruciais. Desenvolve a capacidade de abstração, o pensamento lógico e estruturado, além de aprimorar a mestria algorítmica. Mais do que isso, estimula o pensamento criativo e a habilidade de resolver problemas - competências fundamentais na formação de um cientista de dados. Estas bases sólidas constituem alicerces essenciais, preparando os estudantes para módulos mais avançados do mestrado
-
Disciplina do curso
Disciplina do curso
-
Grau | Semestres | ECTS
Grau | Semestres | ECTS
Mestre | Semestral | 7
-
Ano | Natureza | Lingua
Ano | Natureza | Lingua
1 | Obrigatório | Português
-
Código
Código
ULHT6347-25230
-
Pré-requisitos e co-requisitos
Pré-requisitos e co-requisitos
Não aplicável
-
Estágio Profissional
Estágio Profissional
Não
-
Conteúdos Programáticos
Conteúdos Programáticos
Os Conteúdos Programáticos (CP) desta unidade curricular são os seguintes:
CP1. Introdução à programação
CP2. Introdução à linguagem Python e sua sintaxe
CP3. Intordução aos ambientes de trabalho Jupyter Notebook, Google Collab e Moodle CodeRunner.
CP4. Sintaxe do Python. Variáveis e operadores. Tipos de dados simples: numéricos; strings e seus métodos.
CP5: Controlo de fluxo, com decisores e ciclos.
CP6. Funções. Módulos e packages.
CP7: Tipos de dados compostos: listas, tuplos, sets e dicionários
CP8: Manipulação e gestão de ficheiros (texto, JSON, CSV).
CP9: Visualização de dados com matplotlib.
CP10: Programação funcional. Compreensões, lambda, map, filter, reduce.
CP11: Programação orientada a objetos. Classes.
-
Objetivos
Objetivos
Esta Unidade Curricular tem os seguintes Objetivos de Aprendizagem (OA):
OA1. Conhecimentos Fundamentais em Programação:
- Compreensão sólida dos princípios da programação.
- Familiaridade proficiente com a linguagem Python.
OA2. Aptidões para Resolução de Problemas:
- Habilidade de analisar e decompor problemas complexos em partes menores, permitindo uma compreensão mais clara e uma abordagem mais controlada.
- Abstração eficaz para isolar elementos cruciais e identificar estruturas de dados adequadas.
- Raciocínio lógico, identificando padrões e tomando decisões fundamentadas.
OA3. Competências em Manipulação de Dados:
- Coleta, limpeza e transformação (ETL) de dados para análise.
- Criação de algoritmos eficientes para resolver desafios reais.
OA4. Preparação para Módulos Avançados:
- Base sólida para explorar tópicos mais complexos em análise de dados.
- Desenvolvimento do pensamento crítico e criativo
-
Metodologias de ensino e avaliação
Metodologias de ensino e avaliação
M1: Ensino expositivo: A apresentação de conceitos teóricos é feita de forma expositiva através de slides. Disponibilizam-se num canal Educast da FCCN video-tutoriais curtos desenvolvidos sobre os conceitos chave da disciplina.
M2: Ensino ativo: os conceitos teóricos são demonstrados recorrendo a "live coding" pelo docente.
M3: Aprendizagem experimental: São usadas fichas em Jupyter Notebook que permitem a experimentação imediata dos conceitos lecionados.
M4: Aprendizagem participativa: Durante as aulas é estimulada a discussão em grupo dos exercícios e projetos semanais.
M5: Auto-avaliação: foi desenvolvida uma plataforma que permite realizar quizzes para avaliação de todos os conhecimentos, cuja solução submetida é validada de forma automática.
M6: Aprendizagem orientada a projeto: são realizados de forma autónoma exercícios e projetos semanais com desafios exploratórios de aspectos complementares.
M7: Avaliação contínua: fichas semanais, quizzes, projetos, minitestes e frequencias.
-
Bibliografia principal
Bibliografia principal
- Martins, P. (2019). Programação em Python. IST Press. 3ª Ed.
- Grus, J. (2015). Data science from scratch: first principles with python. O'Reilly Media, Inc.
-
Horário de Atendimento
Horário de Atendimento
-
Mobilidade
Mobilidade
Não