Data Science com Python
Um guia completo para usar Python em seus projetos de data science.
InSkillCoach
Data Science com Python
Python se consolidou como a linguagem de referência para data science graças ao seu rico ecossistema de bibliotecas especializadas. Este artigo apresenta as ferramentas essenciais para começar em data science com Python.
O ecossistema de data science do Python
Python oferece um conjunto completo de ferramentas para cada etapa do processo de data science:
- Manipulação de dados: Pandas, NumPy
- Visualização: Matplotlib, Seaborn, Plotly
- Machine Learning: Scikit-learn, TensorFlow, PyTorch
- Análise estatística: SciPy, StatsModels
- Processamento de linguagem natural: NLTK, spaCy
- Ambientes de desenvolvimento: Jupyter Notebook, Google Colab
Instalação das bibliotecas essenciais
Comece instalando as bibliotecas fundamentais:
pip install numpy pandas matplotlib seaborn scikit-learn jupyter
Manipulação de dados com Pandas
Pandas é a biblioteca indispensável para manipulação de dados em Python:
import pandas as pd
import numpy as np
# Criar um DataFrame
data = {
'Nom': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Ville': ['Paris', 'Lyon', 'Marseille', 'Bordeaux'],
'Salaire': [45000, 55000, 60000, 70000]
}
df = pd.DataFrame(data)
print(df.head())
# Filtrar os dados
jeunes = df[df['Age'] < 35]
print(jeunes)
# Estatísticas descritivas
print(df.describe())
# Agrupar e agregar
par_ville = df.groupby('Ville').agg({
'Salaire': ['mean', 'min', 'max'],
'Age': 'mean'
})
print(par_ville)
Visualização de dados
A visualização é essencial para entender seus dados:
import matplotlib.pyplot as plt
import seaborn as sns
# Estilo de visualização
sns.set(style="whitegrid")
# Distribuição das idades
plt.figure(figsize=(10, 6))
sns.histplot(df['Age'], bins=10, kde=True)
plt.title('Distribution des âges')
plt.xlabel('Âge')
plt.ylabel('Fréquence')
plt.show()
# Relação entre idade e salário
plt.figure(figsize=(10, 6))
sns.scatterplot(x='Age', y='Salaire', data=df)
plt.title('Relation entre âge et salaire')
plt.show()
# Salário médio por cidade
plt.figure(figsize=(10, 6))
sns.barplot(x='Ville', y='Salaire', data=df)
plt.title('Salaire moyen par ville')
plt.show()
Machine Learning com Scikit-learn
O Scikit-learn simplifica a implementação de algoritmos de machine learning:
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error, r2_score
# Preparação dos dados
X = df[['Age']] # Variável independente
y = df['Salaire'] # Variável dependente
# Divisão em conjuntos de treino e de teste
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Criação e treinamento do modelo
model = LinearRegression()
model.fit(X_train, y_train)
# Previsões
y_pred = model.predict(X_test)
# Avaliação do modelo
mse = mean_squared_error(y_test, y_pred)
r2 = r2_score(y_test, y_pred)
print(f"Coefficient: {model.coef_[0]:.2f}")
print(f"Intercept: {model.intercept_:.2f}")
print(f"Erreur quadratique moyenne: {mse:.2f}")
print(f"Coefficient de détermination (R²): {r2:.2f}")
# Visualização das previsões
plt.figure(figsize=(10, 6))
plt.scatter(X_test, y_test, color='blue', label='Données réelles')
plt.plot(X_test, y_pred, color='red', linewidth=2, label='Prédictions')
plt.title('Régression linéaire: Âge vs Salaire')
plt.xlabel('Âge')
plt.ylabel('Salaire')
plt.legend()
plt.show()
Análise exploratória de dados (EDA)
A EDA é uma etapa crucial para entender seus dados antes de construir modelos:
# Matriz de correlação
plt.figure(figsize=(10, 8))
correlation = df.corr()
sns.heatmap(correlation, annot=True, cmap='coolwarm', linewidths=0.5)
plt.title('Matrice de corrélation')
plt.show()
# Pairplot para visualizar as relações entre variáveis
sns.pairplot(df)
plt.suptitle('Relations entre les variables numériques', y=1.02)
plt.show()
# Boxplot para detectar valores atípicos
plt.figure(figsize=(10, 6))
sns.boxplot(x='Ville', y='Salaire', data=df)
plt.title('Distribution des salaires par ville')
plt.show()
Jupyter Notebook: o ambiente ideal
O Jupyter Notebook é o ambiente preferido dos cientistas de dados:
# Iniciar o Jupyter Notebook
jupyter notebook
Vantagens do Jupyter:
- Combinação de código, visualizações e texto explicativo
- Execução por células para um desenvolvimento iterativo
- Compartilhamento fácil das análises
- Suporte a formatos ricos (Markdown, LaTeX, HTML)
Conclusão
Python oferece um ecossistema completo e maduro para data science. Dominando essas ferramentas fundamentais, você poderá:
- Importar e limpar seus dados com eficiência
- Criar visualizações informativas
- Construir e avaliar modelos de machine learning
- Comunicar seus resultados de forma clara e convincente
A data science com Python é uma área vasta e em constante evolução. Continue explorando e aprendendo para se manter atualizado com os avanços e técnicas mais recentes.
Sobre InSkillCoach
Especialista em treinamento e tecnologias
Coach especializado em tecnologias avançadas e IA, apoiado pela GNeurone Inc.
Certificações:
- AWS Certified Solutions Architect – Professional
- Certificações Google Cloud
- Microsoft Certified: DevOps Engineer Expert
- Certified Kubernetes Administrator (CKA)
- CompTIA Security+
Comentários
Os comentários são alimentados pelo GitHub Discussions
Conecte-se com o GitHub para participar da discussão