Tercihlerinizi ve tekrar ziyaretlerinizi hatırlayarak size en alakalı deneyimi sunmak için web sitemizde çerezler kullanıyoruz. "Kabul Et" seçeneğine tıklayarak, Tüm çerezlerin ve kişisel verilerinizin kullanımına izin vermiş olursunuz.
Accept
Türker UZUNTürker UZUN
  • ANASAYFA
  • VERİ ANALİZİ
  • PROGRAMLAMA
  • WORDPRESS
  • BLOG
    • Güncel Haber
    • Yaşam
    • Teknoloji
    • Finans
    • Kripto Para
  • DİZİ & FİLM
    • Dizi İnceleme
    • Film Fragmanları
  • İLETİŞİM
Reading: Python CSV Okuma ve Dil Kodlama Sorunları
Share
Aa
Türker UZUNTürker UZUN
Aa
  • ANASAYFA
  • VERİ ANALİZİ
  • PROGRAMLAMA
  • WORDPRESS
  • BLOG
  • DİZİ & FİLM
  • İLETİŞİM
Arama
  • ANASAYFA
  • VERİ ANALİZİ
  • PROGRAMLAMA
  • WORDPRESS
  • BLOG
    • Güncel Haber
    • Yaşam
    • Teknoloji
    • Finans
    • Kripto Para
  • DİZİ & FİLM
    • Dizi İnceleme
    • Film Fragmanları
  • İLETİŞİM
Follow US
© 2022 Türker UZUN. Python Uygulamaları - Veri Analizi Örnekleri - NLP Uygulamaları - RPA Uygulamaları
Türker UZUN > Blog > Algoritma-Programlama > Python Blog > Python CSV Okuma ve Dil Kodlama Sorunları
Algoritma-ProgramlamaPython Blog

Python CSV Okuma ve Dil Kodlama Sorunları

2 Views 3 Min Read
Python Programlama Dersleri, Python Blog, Python Programlama Örnekleri
SHARE

Python ile bir proje geliştirirken algoritmalardan ve geliştirmelerden çok özellikle veri analizi ile ilgileniyorsanız en çok başınızı ağrıtan konular dil kodlama sorunları ve veri tiplerinin değişimi sorunları olacaktır.

“Türkçe karakter sorunu” gerçekten insanı proje geliştirirken sinir eden bir sorun tipidir. Verinizi analiz etmeden önce temizleme, sınıflandırma, düzenleme, karakter setleri vb. bir çok işlemden geçirmeniz gerekiyor ve bu bir de Türkçe karakterler ile oluşmuş bir data deseni ise işiniz daha zor olacak diyebilirim.

Karşılaştığım tüm kaynaklarda sadece utf-8 ya da sadece iso8859-1 kullanarak tek satır ile sorunun çözümleneceğine dair bilgi verildiğini gözlemledim ancak öyle olmuyor. Lafı çok uzatmadan aşağıda bir iki örnek ile dil kodlamalarında sorun yaşanan bazı datalar için deneyebileceğiniz bir yol daha paylaşacağım.

Öncelikle excel veri okumasında çok fazla dil kodlama ve veri tipi değişikliği ile karşılaşmıyorsunuz. Ancak veri analizi yapacaksanız ve büyük veri ile ilgilenecekseniz excel 1.5 milyon adetten fazla kaydı tutmadığı için sorun yaşarsınız. Aynı zamanda .xlsx in okuma ve yazma hızları da içinde stil paketleri dahil olduğu için oldukça uzun sürmektedir.

Örneğin 50k bir veri için excel okuma ve yazma süreleri bilgisayar performansına göre değişse de yaklaşık 30-40 saniye civarlarındadır. Ancak aynı veriyi CSV olarak okuttuğunuzda bu süre 2-3 saniyeye kadar düşecektir. Tam da bu noktada CSV datalarındaki okuma sorunları ile karşılaşıyoruz.

Çözümü için şöyle bir yol izleyebilirsiniz ve buradaki koşulları çoğaltabilirsiniz. Genelde utf-8 in sorunları çözdüğü söylenir ancak BOM kaydedilmiş verilerde kullandığım etiketi kullanmanız gerekir. Dil kodlamasını notepad++ tarzı programlar ile kontrol edebilirsiniz. Tek bir CSV okuma yöntemi belirlerseniz bu kısımda data yüklemesi yaptığınızda hata almanız olası. Türkçe karakterler için aşağıdaki iki kodlama denemesi büyük ölçüde sorununuza yardımcı olacaktır diye düşünüyorum, istisnaları dediğim gibi genişletebilirsiniz. Farklı bir görüşü olan bilgilendirmek isteyen varsa yorum olarak paylaşabilir.

def VeriOku(data):
    if ".csv" in data:
        import chardet
        with open(f'uploads/{data}', 'rb') as f:
            sonuc= chardet.detect(f.readline())
        try:
            df=pd.read_csv(f'uploads/{data}', sep=";",encoding = 'utf-8-sig', dtype=str)
        except:
            df=pd.read_csv(f'uploads/{data}', sep=";", encoding = 'windows-1254', dtype=str) 
        
    if ".xlsx" in data:
        df=pd.read_excel(f'uploads/{data}',dtype=str)

    df.drop_duplicates(inplace=True)
    df.dropna(thresh=3,axis=1,inplace=True)
    ... burada temel işlemleri yapabilirsiniz 

    return df

Veriyi okuduktan sonra veri tipi dönüşümlerini toplu bir şekilde nasıl yaparız, bir sonraki yazımda değineceğim.

Umarım faydalı olur.

You Might Also Like

Python API Kullanımı: TheMovieDB API Örneği

Python ile Klasördeki Excel Dosyalarını Birleştirme

Python Selenium ETSY Yorum Çekme

Python 4K Youtube Video İndirme Uygulaması

Python ile Google Translate / Çeviri Kullanımı

TAGGED: CSV BOM karakter, Python Blog, Python CSV Okuma, Python Türkçe Karakter Sorunu, utf9 bom karakter sorunu
Editor 24 Haziran 2021
Share this Article
Facebook Twitter LinkedIn Copy Link
Previous Article INFINITE(2021) Film HD İzle | HD Fragman | Film İncelemesi
Next Article Veri Analizi: Python Veri Tipi Dönüşümleri
Leave a comment

Bir cevap yazın Cevabı iptal et

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

seventeen + 12 =

Son Yazılar

John Wick Chapter 4 Hagakure HD İzle HD Fragman
5 out of 5
Reacher Dizisi 2. Sezon İzle
4.4 out of 5
KADIN ELBİSE MODELLERİ - FICKLE HEARTS
Kadın Modası Tavsiye – FICKLE HEARTS
BLOG Yaşam
E-Posta Gitmemesi Kara liste: ‘Blacklist’ Nedir, Çıkmak İçin Ne Yapmalı?
BLOG Teknoloji

İlgini Çekebilir..

Algoritma-ProgramlamaPython BlogPython Veri AnaliziVeri Analizi

Python API Kullanımı: TheMovieDB API Örneği

2 Min Read
Algoritma-ProgramlamaPython BlogPython Veri Analizi

Python ile Klasördeki Excel Dosyalarını Birleştirme

1 Min Read
Python BlogPython Veri AnaliziVeri Analizi

Python Selenium ETSY Yorum Çekme

1 Min Read
Python Blog

Python 4K Youtube Video İndirme Uygulaması

1 Min Read
Show More
//

Python Uygulamaları, Veri Analizi Projeleri, Python Veri Analizi, Python NLP Uygulamaları, Sentiment Analysis, Duygusal Analiz, R Programlama, RPA Uygulamaları, Python Selenium Robot Uygulamaları, UiPath RPA Projeler, Web Tasarım

Sosyal Platformlar

Türker UZUNTürker UZUN
Follow US

© 2022 Türker UZUN. Python Uygulamaları - Veri Analizi Örnekleri - NLP Uygulamaları - RPA Uygulamaları

Removed from reading list

Undo
Welcome Back!

Sign in to your account

13 − one =

Lost your password?