CSV ve Excel dosyalarınızdaki verileri akıllı bir şekilde normalize eden web tabanlı bir araç.
Bu projenin tanıtım videosunu izlemek için aşağıdaki bağlantıya tıklayabilirsiniz:
📺 Veri Normalizasyon Aracı Tanıtım Videosu
Bu proje, veri bilimi ve makine öğrenmesi projelerinde sıkça kullanılan normalizasyon işlemini otomatikleştiren bir web uygulamasıdır. Algoritma, veri setinizin dağılımını analiz ederek en uygun normalizasyon tekniğini seçer ve uygular.
- Akıllı Normalizasyon Algoritması: Veri dağılımına göre optimize edilmiş normalizasyon tekniği seçimi
- Çoklu Format Desteği: CSV ve Excel dosyaları (.csv, .xls, .xlsx)
- Otomatik Veri Analizi: Sayısal sütunların otomatik tespiti
- Eksik ve Aykırı Değer İşleme: Winsorization ve medyan doldurma teknikleri
- Kullanıcı Yönetimi: Çoklu kullanıcı desteği ve oturum yönetimi
- İşlem Geçmişi: Tüm normalizasyon işlemlerinin kaydı
- Responsive Arayüz: Mobil cihazlarda da sorunsuz çalışan modern arayüz
- Pozitif Çarpık Veriler: Logaritmik dönüşüm + Sigmoid fonksiyonu
- Negatif Çarpık Veriler: Min-Max ölçekleme + Trigonometrik normalizasyon
- Normal Dağılıma Yakın Veriler: Hibrit ArcTan yaklaşımı
- Aykırı Değer Tespiti: IQR (Interquartile Range) yöntemi
- Doğruluk Kontrolü: Normalize edilmiş verilerin 0-1 aralığı garantisi
- Python 3.8+
- Flask
- Pandas
- NumPy
- Waitress (production deployment için)
- SQLite3 (veritabanı için)
- Repo'yu klonlayın:
git clone https://github.com/mehmetdogandev/normalisation.git
cd normalisation
- Sanal ortam oluşturun ve aktifleştirin:
# Windows
python -m venv venv
venv\Scripts\activate
# Linux/MacOS
python -m venv venv
source venv/bin/activate
- Gerekli kütüphaneleri yükleyin:
pip install -r requirements.txt
- Uygulamayı başlatın:
python app.py
- Tarayıcınızı açın ve şu adrese gidin:
http://127.0.0.1:5000
docker build -t normalisation-app .
docker run -p 5000:5000 normalisation-app
- Hesap oluşturun veya giriş yapın
- Ana sayfada "Dosya Seç" butonuna tıklayın veya dosyanızı sürükleyip bırakın
- Ad ve soyad bilgilerinizi girin
- Çıktı formatını seçin (CSV veya Excel)
- "Normalize Et" butonuna tıklayın
- İlerleme çubuğu tamamlandığında, normalize edilmiş dosyayı indirebilirsiniz
- Dosya Okuma ve Analiz (%20): Yüklenen dosya okunur ve veri yapısı analiz edilir
- Sayısal Sütun Tespiti (%40): Normalize edilecek sütunlar belirlenir ve sınıf sütunları korunur
- Eksik ve Aykırı Değer İşleme (%60): Eksik değerler doldurulur ve aykırı değerler işlenir
- Akıllı Normalizasyon (%80): Veri dağılımına uygun normalizasyon tekniği uygulanır
- Doğrulama ve Kontrol (%90): Normalize edilmiş verilerin 0-1 aralığında olduğu doğrulanır
- Sonuç Dosyasının Oluşturulması (%100): İşlenmiş veriler seçilen formatta kaydedilir
normalisation/
├── app.py # Ana uygulama dosyası
├── database.db # SQLite veritabanı
├── requirements.txt # Gerekli kütüphaneler
├── static/ # Statik dosyalar
│ ├── css/ # CSS stilleri
│ ├── js/ # JavaScript dosyaları
│ ├── uploads/ # Yüklenen dosyalar
│ ├── new_csv/ # Normalize edilmiş dosyalar
│ └── videos/ # Video dosyaları
│ └── images/ # projeye ait arayüz görselleri
└── templates/ # HTML şablonları
├── index.html # Ana sayfa
├── login.html # Giriş sayfası
├── register.html # Kayıt sayfası
├── about.html # Algoritma hakkında bilgi
├── header.html # Başlık şablonu
└── footer.html # Alt bilgi şablonu
Katkılarınızı bekliyoruz! Lütfen bir pull request göndermeden önce şunları yapın:
- Repo'yu forklayın
- Yeni bir feature branch oluşturun (
git checkout -b feature/amazing-feature
) - Değişikliklerinizi commit edin (
git commit -m 'Add amazing feature'
) - Branch'inizi push edin (
git push origin feature/amazing-feature
) - Bir Pull Request açın
Mehmet DOĞAN - mehmetdogan.dev@gmail.com
Proje Bağlantısı: https://github.com/mehmetdogandev/imagecription
- Website: memetdogan.com
- LinkedIn: linkedin.com/in/mehmetdogandev
- YouTube: youtube.com/@md-kare
Bu proje MIT Lisansı altında lisanslanmıştır. Detaylar için LICENSE
dosyasına bakınız.
⭐️ Bu projeyi beğendiyseniz yıldız vermeyi unutmayın! ⭐️