Extension courses

The UB's university extension courses are study programmes of different lengths designed to enhance students' professional skills or enable them to specialize in their field of work.

 

CURS D'EXTENSIÓ UNIVERSITÀRIA: PYTHON FOR SCIENTISTS
CURS D

 

Teaching:

 

As scientists we often have to deal in our daily activities with considerable collections of numeric data. We need to extract relevant data, sort them, modify them and view them. Usually these tasks need to be carried out repeatedly. Automating these tasks with Python results in higher efficency and repeoducibility and fewer errors. In spite of the many online resources and Python tutorials available, few are designed to solve specific problems and needs of scientists. This course covers several tools that Python currently offers to the scientist, specially focused on data processing and visualization. You will also learn to code numerical algorithms efficiently in Python. By attending the course you will have the opportunity of combining theory and practice in a computer room.


No knowledge of Python is required to participate and take advantage of this course. Neither should one be an expert in any other programming language. However, we do expect that participants are acquainted with the basic elements and structures of a programming language, ie, a variable, a function or a loop. If you already have some knowledge of Python, we are confident the course will help you to increase the efficiency of your programs.

 

REGISTRATION CLOSED

The registration process will be carried in two steps:

  • First: You need to fill in the Registration Application form (sol·licitud de matrícula) that can be downloaded HERE. Once you have completed and signed this form you may send it together with a photocopy of your personal ID to:

Fermín Huarte Larrañaga
Departament de Química Física, Despatx 464B
Facultat de Química, Martí I Franqués 1, 08028 Barcelona

Ramon Crehuet Simon
Institut de Química Avançada de Catalunya
Jordi Girona 18-26, 08034 Barcelona
 

  • After the pre-registration process, the Postgraduate Office of the Facultat de Química will prepare the official registration for all the selected participants. Applications will only be rejected if the maximum number of participants (24) is exceeded.

Registration fee: 200€ + taxes.

Dates and Schedule:

The course (3 ECTS: 30 hours) will take place on the second week of June on a daily basis, starting Monday 12/06/2017 and ending Friday 16/06/17. Sessions will be from 9:00 to 17:00h with a lunch break.

Where:

Computer Room 2C at the Facultat de Química of the Universitat de Barcelona. C/ Martí i Franquès 1, Barcelona.

  • Knowing the basic elements of the Python programming language.
  • Experimenting with the basic algorithmic structures and their Python implementation.
  • Developing skills in the structured resolution of a problem by building a suitable algorithm and implementing it in a high level language such as Python.
  • Knowing the tools that the Python language provides specifically for data management and visualization (Numpy, Scipy, Matplotlib and Pandas). Application of such tools to the scientific activity.
  • Knowing Python module packages useful in a scientific environment.

The teaching methodology of the course is based on theory/practice mixed sessions. These sessions of 2h will consist in a short explanation of theoretical concept (about 30 minutes) followed by their immediate implementation the computer lab, following jupyter notebooks prepared for this course.
During the sessions, tasks and challenges will be proposed to the participants. The participants will work on these tasks autonomously, outside the classroom under supervision (online and in person).

General explanations and course material will be provided in English. However, During the hands-on sessions problem can be discussed in either English, Spanish or Catalan.

  1. General Features of the Python language.
  2. Python basic elements
  3. Interactive scientific coding with the Jupyter Notebook
  4. Functions
  5. Modules
  6. Working with files
  7. Creating your Python Environment
  8. Numpy
  9. Data Visualitzation with Matplotlib and other libraries
  10. Scipy
  11. Data Analysis with Python: Pandas
  12. Debugging and code optimization
  13. Other modules useful in science
  14. Beyond Python