Veri Bilimciler i?in üretkenlik Ara?lar? ve Best Practices
Stack Overflow'un 2024 Developer Survey'ine g?re, veri bilimcilerin %78'i AI destekli ara?lar kullanarak üretkenliklerini art?r?yor. Peki hangi ara?lar ?ne ??k?yor? ??
?ne ??kan Ara? Kategorileri
1. Kod Geli?tirme Ara?lar?
# Otomatik Test üretimi ?rne?i
def analyze_sales_data(df):
"""Analyze sales data and return key metrics"""
def test_analyze_sales_data():
test_df = pd.DataFrame({
'date': pd.date_range('2024-01-01', periods=10),
'sales': np.random.randn(10),
'category': ['A', 'B'] * 5
})
result = analyze_sales_data(test_df)
assert isinstance(result, dict)
?? Pro ?pu?lar?:
? Do?al dil ile kod üretimi i?in detayl? a??klamalar yaz?n
? Test senaryolar?n? otomatik olu?turun
? Dokümantasyonu AI ile zenginle?tirin
Settings.json Optimizasyonu:
{
"python.analysis.typeCheckingMode": "basic",
"python.formatting.provider": "black",
"editor.formatOnSave": true,
"editor.rulers": [80, 100],
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"jupyter.notebookFileRoot": "${workspaceFolder}"
}
?nerilen Extension Paketi:
{
"temel_paket": [
"Python",
"Jupyter",
"GitLens",
"Remote Development"
],
"veri_bilimi": [
"Python Data Science",
"Python Preview",
"Python Type Hint",
"Python Docstring Generator"
]
}
2. Veri Analiz Ara?lar?
Modern Dashboard ?rne?i:
import streamlit as st
import plotly.express as px
# Sayfa yap?land?rmas?
st.set_page_config(
page_title="Analiz Dashboardu",
layout="wide",
initial_sidebar_state="expanded"
)
# Türk?e karakter deste?i
st.markdown("""
<style>
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&display=swap');
html, body, [class*="css"] {
font-family: 'Open Sans', sans-serif;
}
</style>
""", unsafe_allow_html=True)
# Metrikler
col1, col2, col3 = st.columns(3)
with col1:
st.metric(
"Toplam Sat??",
"?1.2M",
"+12%",
help="Son 30 gün"
)
Finans Dashboard ?rne?i:
import panel as pn
import pandas as pd
import hvplot.pandas
# Türk?e tarih format? deste?i
pn.extension(template='dark')
tl_formatter = lambda x: f"{x:,.2f} ?"
class FinansDashboard:
def __init__(self):
self.df = pd.read_csv('finans_verileri.csv')
def create_dashboard(self):
# Filtreler
tarih_secici = pn.widgets.DateRangeSlider(
name='Tarih Aral???',
start=self.df['tarih'].min(),
end=self.df['tarih'].max()
)
3. Model Geli?tirme Ara?lar?
Experiment Tracking ?rne?i:
import wandb
from sklearn.model_selection import cross_val_score
wandb.init(
project="sales_prediction",
config={
"dataset": "sales_2024_Q4",
"model": "RandomForest",
"features": ["price", "category", "season"]
}
)
# Model e?itimi ve tracking
model = RandomForestClassifier()
scores = cross_val_score(model, X, y, cv=5)
wandb.log({
"cv_mean": scores.mean(),
"cv_std": scores.std(),
"feature_importance": dict(zip(
features,
model.feature_importances_
))
})
4. Proje Y?netim Ara?lar?
Veri Bilimi Proje ?ablonu:
# ?? Proje: [Proje Ad?]
## ?? ?zet
- Ba?lang??: [Tarih]
- Biti?: [Tarih]
- Durum: [Durum]
## ?? Hedefler
- [ ] Veri Toplama
- [ ] Feature Engineering
- [ ] Model Geli?tirme
## ?? Metrikler
- Baseline Accuracy: [X%]
- Target Accuracy: [Y%]
- Current Best: [Z%]
## ?? Günlük Notlar
### [Tarih]
- Yap?lanlar
- ??renilenler
- Sonraki Ad?mlar
?? Deployment Best Practices
Docker Setup
# Base image
FROM python:3.10-slim
# Türk?e dil deste?i
ENV LANG=tr_TR.UTF-8
ENV LC_ALL=tr_TR.UTF-8
# ?al??ma dizini
WORKDIR /app
# Gerekli paketler
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Uygulama kopyalama
COPY . .
# Port
EXPOSE 8501
# Ba?latma
CMD ["streamlit", "run", "app.py"]
Monitoring Setup
from prometheus_client import Counter, Histogram
# Metrikler
PREDICTION_TIME = Histogram(
'model_prediction_seconds',
'Time spent processing prediction'
)
PREDICTION_COUNTER = Counter(
'predictions_total',
'Total number of predictions'
)
# API endpoint
@app.post("/predict")
async def predict(data: PredictionInput):
PREDICTION_COUNTER.inc()
with PREDICTION_TIME.time():
result = model.predict(data.dict())
return {"prediction": result}
?? üretkenlik Metrikleri
VSCode Snippets
{
"EDA Template": {
"prefix": "eda",
"body": [
"import pandas as pd",
"import numpy as np",
"import matplotlib.pyplot as plt",
"import seaborn as sns",
"",
"# Veri yükleme",
"df = pd.read_csv('${1:dosya.csv}')",
"",
"# Temel analiz",
"print(f'Shape: {df.shape}')",
"print('\\nInfo:')",
"df.info()",
"",
"# Eksik de?er analizi",
"print('\\nEksik de?erler:')",
"print(df.isnull().sum())",
"",
"# Korelasyon matrisi",
"plt.figure(figsize=(12, 8))",
"sns.heatmap(df.corr(), annot=True)",
"plt.title('Korelasyon Matrisi')",
"plt.show()"
]
}
}
?? Performans Metrikleri
Bu ara?lar?n etkisi:
?? Nas?l Ba?layabilirsiniz?
Ba?lang?? Seti:
??renme Kaynaklar?:
Bu ara?lar? kullanmaya ba?lad???n?zda, ilk ay i?inde:
??????????????????????????????????????????????????????????????????
?? Serinin Devam?nda
Her ara? kategorisi i?in detayl? incelemeler, kurulum rehberleri ve ?rnek kullan?mlarla devam edece?iz. Takipte kal?n!
??????????????????????????????????????????????????????????????????
?lginizi ?ekebilecek di?er yaz?lar?m: ?
Siz de deneyimlerinizi payla??n! ??
#VeriAnalizi #Python #DataScience #MachineLearning #ArtificialIntelligence