0% encontró este documento útil (0 votos)
7 vistas5 páginas

Curso Básico de Python y SciPy

El documento es un curso básico de Python que cubre desde la introducción al lenguaje, instalación y entorno de desarrollo, hasta conceptos fundamentales como variables, estructuras de control, listas, diccionarios y funciones. También incluye ejercicios prácticos utilizando la biblioteca SciPy para computación científica, abarcando álgebra lineal, optimización y estadística. Finalmente, se presentan métodos de visualización de datos y estadísticas descriptivas.

Cargado por

vlis.darck456
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
7 vistas5 páginas

Curso Básico de Python y SciPy

El documento es un curso básico de Python que cubre desde la introducción al lenguaje, instalación y entorno de desarrollo, hasta conceptos fundamentales como variables, estructuras de control, listas, diccionarios y funciones. También incluye ejercicios prácticos utilizando la biblioteca SciPy para computación científica, abarcando álgebra lineal, optimización y estadística. Finalmente, se presentan métodos de visualización de datos y estadísticas descriptivas.

Cargado por

vlis.darck456
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

CURSO BÁSICO DE PYTHON

Módulo 1: Introducción a Python


1.1 ¿Qué es Python?
Lenguaje de programación interpretado, multipropósito y fácil de aprender.
Usado en desarrollo web, ciencia de datos, inteligencia artificial, automatización, etc.

1.2 Instalación y Entorno de Desarrollo


Descargar Python desde: [Link]
Instalar un editor de código como VS Code, PyCharm o IDLE (incluido con Python).

Verificar instalación:
bash
python --version

1. Primer Programa: ¡Hola, Mundo!


python
print("¡Hola, Mundo!")

2. Variables y Tipos de Datos


# Variables básicas
nombre = "Juan" # str (cadena)
edad = 25 # int (entero)
altura = 1.75 # float (flotante)
es_estudiante = True # bool (booleano)

# Operaciones matemáticas
a = 10
b=3
suma = a + b # 13
resta = a - b #7
multiplicacion = a * b # 30
division = a / b # 3.333...
division_entera = a // b # 3
modulo = a % b #1
potencia = a ** b # 1000

3. Estructuras de Control
Condicionales (if, elif, else)
edad = 18
if edad >= 18:
print("Eres mayor de edad")
else:
print("Eres menor de edad")

Bucles (while y for)


# Bucle while
contador = 0
while contador < 5:
print(contador)
contador += 1
# Bucle for
for i in range(5): # 0, 1, 2, 3, 4
print(i)

4. Listas y Diccionarios
Listas (list)
frutas = ["manzana", "banana", "naranja"]
print(frutas[0]) # "manzana"
[Link]("uva") # Añade "uva" al final
Diccionarios (dict)
python
persona = {
"nombre": "Ana",
"edad": 30,
"ciudad": "Madrid"
}
print(persona["nombre"]) # "Ana"

5. Funciones
# Función básica
def saludar(nombre):
return f"Hola, {nombre}!"

mensaje = saludar("Carlos")
print(mensaje) # "Hola, Carlos!"

# Función con parámetros por defecto


def suma(a, b=5):
return a + b
print(suma(3)) # 8 (3 + 5)
print(suma(3, 7)) # 10

6. Proyecto Final: Calculadora Simple


def calculadora():
print("1. Suma")
print("2. Resta")
print("3. Multiplicación")
print("4. División")
opcion = input("Elige una opción (1-4): ")
num1 = float(input("Ingresa el primer número: "))
num2 = float(input("Ingresa el segundo número: "))
if opcion == '1':
print(f"Resultado: {num1 + num2}")
elif opcion == '2':
print(f"Resultado: {num1 - num2}")
elif opcion == '3':
print(f"Resultado: {num1 * num2}")
elif opcion == '4':
print(f"Resultado: {num1 / num2}")
else:
print("Opción inválida")
calculadora()
EJERCICIOS CON SCIPY - CURSO BÁSICO
SciPy es una biblioteca fundamental para computación científica en Python.

Módulo Aplicación típica


[Link] Álgebra lineal (matrices, sistemas de ecuaciones, descomposiciones).
[Link] Optimización y ajuste de modelos (minimización, regresión, root-finding).
[Link] Integración numérica y solución de ecuaciones diferenciales (ODEs).
[Link] Estadística (distribuciones, tests estadísticos, análisis de datos).
[Link] Procesamiento de señales (filtros, Fourier, wavelets).
[Link] Transformadas rápidas de Fourier (FFT).
[Link] Interpolación de datos (1D, 2D, splines).
[Link] Matrices dispersas (eficiencia en almacenamiento y operaciones).
[Link] Funciones matemáticas especiales (Bessel, gamma, erf, etc.).
[Link] Procesamiento de imágenes (filtros, morfología, medidas).

1. Álgebra Lineal ([Link])


from scipy import linalg
import numpy as np

# Ejercicio 1: Resolver sistema de ecuaciones


# 2x + y = 5
# x - 3y = -1

A = [Link]([[2, 1], [1, -3]])


b = [Link]([5, -1])
solucion = [Link](A, b)
print(f"Solución del sistema: x = {solucion[0]}, y = {solucion[1]}")

# Ejercicio 2: Calcular determinante e inversa


matriz = [Link]([[4, 7], [2, 6]])
det = [Link](matriz)
inversa = [Link](matriz)
print(f"Determinante: {det}\nInversa:\n{inversa}")

2. Optimización ([Link])
from [Link] import minimize

# Ejercicio 3: Minimizar función cuadrática


def funcion(x):
return x**2 + 5*x + 6
resultado = minimize(funcion, x0=0)
print(f"Mínimo en x = {resultado.x[0]:.2f}")

# Ejercicio 4: Ajuste de curva (regresión lineal)


x_data = [Link]([0, 1, 2, 3, 4])
y_data = [Link]([1.1, 1.9, 3.2, 4.0, 5.1])
def modelo(x, a, b):
return a*x + b
from [Link] import curve_fit
params, _ = curve_fit(modelo, x_data, y_data)
print(f"Parámetros: Pendiente = {params[0]:.2f}, Intercepto = {params[1]:.2f}")
3. Estadística ([Link])
from scipy import stats

# Ejercicio 5: Distribución normal


datos = [Link](loc=10, scale=2, size=100)
media, desviacion = [Link](datos)
print(f"Ajuste normal: μ = {media:.2f}, σ = {desviacion:.2f}")

# Ejercicio 6: Test t de Student


grupo1 = [Link](5, 1, 30)
grupo2 = [Link](6, 1, 30)
t_stat, p_valor = stats.ttest_ind(grupo1, grupo2)
print(f"Test t: p-valor = {p_valor:.4f} (significativo si p < 0.05)")

# 1. Estadísticas descriptivas
# Importar librerías necesarias
from scipy import stats
import numpy as np
import [Link] as plt

# 1. Generar datos de ejemplo (calificaciones de 0 a 20)


[Link](42) # Para reproducibilidad
calificaciones = [Link](loc=12, scale=3, size=50)
calificaciones = [Link](calificaciones, 0, 20) # Limitar entre 0 y 20
calificaciones = [Link](calificaciones, 1) # Redondear a 1 decimal
print("Muestra de calificaciones:", calificaciones[:10])

Cálculo de estadísticas descriptivas con SciPy


# 2. Medidas de tendencia central
media = [Link](calificaciones)
mediana = [Link](calificaciones)
moda_result = [Link](calificaciones)

# 3. Medidas de dispersión
desviacion = [Link](calificaciones)
rango = [Link](calificaciones) # Peak to peak (máx - mín)
rango_intercuartil = [Link](calificaciones)

# 4. Forma de la distribución
asimetria = [Link](calificaciones)
curtosis = [Link](calificaciones)

# 5. Mostrar resultados
print("\n--- Estadísticas Descriptivas ---")
print(f"Media: {media:.2f}")
print(f"Mediana: {mediana:.2f}")
print(f"Moda: {moda_result.mode[0]} (aparece {moda_result.count[0]} veces)")
print(f"\nDesviación estándar: {desviacion:.2f}")
print(f"Rango: {rango:.2f}")
print(f"Rango intercuartílico (IQR): {rango_intercuartil:.2f}")
print(f"\nAsimetría: {asimetria:.2f}")
print(f"Curtosis: {curtosis:.2f}")
Visualización de resultados
# 6. Crear gráficos
[Link](figsize=(12, 5))

# Histograma
[Link](1, 2, 1)
[Link](calificaciones, bins=10, edgecolor='black', alpha=0.7)
[Link](media, color='red', linestyle='--', label=f'Media ({media:.2f})')
[Link](mediana, color='green', linestyle=':', label=f'Mediana ({mediana:.2f})')
[Link]('Distribución de Calificaciones')
[Link]('Puntaje')
[Link]('Frecuencia')
[Link]()
# Boxplot
[Link](1, 2, 2)
[Link](calificaciones, vert=False)
[Link]('Diagrama de Caja')
[Link]('Puntaje')
plt.tight_layout()
[Link]()

También podría gustarte