Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm
Excel hücrelerini metne sığdırmak için güncel bilgileri ve 4 kolay çözümü keşfedin.
Pandas, veri işleme ve analizi için yaygın olarak kullanılan bir Python kitaplığıdır. Pandaların size sağlayabileceği temel işlevlerden biri, bir veri kümesinin yapısını değiştirebilme yeteneğidir. Spesifik olarak, bir DataFrame'deki dizinleri bırakmak, veri kümeleriyle çalışırken çok önemli bir işlemdir. Verilerden istenmeyen satırları veya sütunları kaldırmanıza olanak tanır.
Pandalarla bir dizin bırakmak için .drop() ve .reset_index() yöntemlerini kullanabilirsiniz. .drop() yöntemi, belirli satırları veya sütunları kaldırmanıza olanak tanır. Öte yandan, .reset_index() yöntemi, dizini kaldırmanıza ve varsayılan RangeIndex'e sıfırlamanıza olanak tanır.
Bu makalede, pandaların DataFrame'lerinde dizinleri bırakmak için bu yöntemlerin kullanımını tartışacağız. Bir veri kümesinin yapısının farklı analitik ihtiyaçlara uyacak şekilde nasıl etkin bir şekilde manipüle edileceğini göstermek için çeşitli örnekleri inceleyeceğiz. Bu örnekler aracılığıyla, veri işleme için pandas kitaplığının nasıl kullanılabileceğini daha iyi anlayacaksınız.
Hadi başlayalım!
İçindekiler
Pandalar Düşüş Endeksini Anlamak
Pandalarla indeks düşürme konusuna geçmeden önce, pandalar DataFrame'in ne olduğunu anlamanız çok önemlidir. Ayrıca, bir pandas DataFrame'deki dizinler ve sütunlar kavramına da aşina olmalısınız.
Bu bölümde, bir panda DataFrame, dizin ve sütunların temellerini ele alacağız. Daha sonra pandaları kullanarak bir indeks düşürme örneğine bakacağız.
1. Pandas Veri Çerçevesi nedir?
Pandas, yüksek performanslı veri işleme ve analiz araçları sağlayan açık kaynaklı bir Python kitaplığıdır. Anahtar veri yapılarından biri DataFrame'dir .
Bir pandas DataFrame, etiketli eksenlere (satırlar ve sütunlar) sahip iki boyutlu bir veri yapısıdır. DataFrame'i bir SQL tablosunun veya bir Excel elektronik tablosunun Pythonic nesne temsili olarak düşünebilirsiniz.
Aşağıdaki tipik bir panda DataFrame'idir:
2. Dizinler ve Sütunlar Nedir?
Bir pandas DataFrame'de Dizin , veri noktaları için bir 'adres' görevi görür. DataFrame genelinde verilere erişmek ve bunları düzenlemek için bir araç sağlar. Pandalar tarafından atanan varsayılan tamsayı dizisi veya kullanıcı tanımlı bir özel dizin olabilir.
Sütunlar , DataFrame'de farklı türde verileri barındıran değişkenlerdir. Her sütun aslında bir dizi veridir. Tamsayılar, değişkenler veya dizeler gibi çeşitli veri türlerini tutabilir. Genellikle sütun adı olarak anılan sütunun etiketi, bu veri dizisini tanımlar.
Bir pandas DataFrame'de, veri işleme genellikle satır etiketleri (indeksler) veya sütun etiketleriyle çalışmayı içerir.
Çok dizinli bir DataFrame ile gerçekleştirebileceğiniz bazı yaygın işlemler, etiketlerine göre satırları veya sütunları seçmeyi, yeniden adlandırmayı ve bırakmayı içerir.
3. Pandalarla İndeks Sütunu Nasıl Düşürülür?
Pandalarda, dizini bırakmak ve sıfırlamak için reset_index() DataFrame yöntemini kullanabilirsiniz .
Aşağıdaki DataFrame'e sahip olduğumuzu varsayalım:
Dizin sütununu bırakmak için aşağıdaki kodu kullanabiliriz:
df.reset_index(drop=True)
Bu kodu çalıştırdıktan sonra aşağıdaki örneği alacaksınız:
Çıktıda, indeksin düştüğünü ve orijinal indeks değerleriyle değiştirildiğini görebilirsiniz.
Belirtilen etiketleri satırlardan veya sütunlardan kaldırmak için pandalarda bırakma yöntemini de kullanabilirsiniz .
Bu yöntemin sözdizimi şöyledir:
DataFrame.drop(labels=None, *, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')
Drop yönteminin temel parametreleri aşağıdadır :
etiketler : Kaldırılacak etiketler. Eksen parametresine bağlı olarak satır veya sütun olabilir .
eksen : Satırlardan ( 0 veya 'dizin' ) veya sütunlardan ( 1 veya 'sütunlar' ) düşüleceğini belirler .
index : axis=0 belirtmeye bir alternatif . Kaldırılacak satır etiketlerinin gösterilmesine izin verir.
sütunlar : axis=1 belirtmeye bir alternatif . Kaldırılacak sütun etiketlerinin gösterilmesine izin verir.
inplace : True olarak ayarlanırsa , işlem yerinde gerçekleştirilecektir, yani orijinal DataFrame değiştirilecektir. False (varsayılan) ise , belirtilen etiketlerin kaldırıldığı yeni bir DataFrame döndürülür.
hatalar : Eksik etiketlerin nasıl işleneceğini kontrol eder. 'Yükselt' (varsayılan) ise , etiket bulunamadığında bir hata oluşur. "Zorla" ise , eksik etiketler sessizce yok sayılır.
Aşağıdaki DataFrame'e sahip olduğumuzu varsayalım:
İndeks 1 olan satırı drop etmek istiyoruz. Bunu drop metodu ile yapmak için import pandas ile başlayarak aşağıdaki kodu yazabilirsiniz:
import pandas as pd
# Drop row with index 1
df.drop(1, axis=0)
Drop işlevinin eksen =0 bağımsız değişkeni , yorumlayıcıya satır bazında bir işlem gerçekleştirdiğimizi söyler. İkinci argüman 1, satır indeksidir. Tercümana 1. indeksli satırı bırakmasını söyler.
Yukarıdaki işlemden sonra aşağıdaki DataFrame'i elde ederiz:
Şimdi, DataFrame'imizden sütun başlığı olarak Age sütununu bırakmak istediğimizi varsayalım. Bunu başarmak için aşağıdaki kodu yazabiliriz:
# Drop column 'Age'
df.drop('Age', axis=1)
eksen =1 bağımsız değişkeni , yorumlayıcıya sütun bazında bir işlem gerçekleştirdiğimizi söyler. 'Yaş' bağımsız değişkeni yorumlayıcıya 'Age' adlı sütunu bırakmasını söyler .
Yukarıdaki kodu çalıştırdıktan sonra, aşağıdaki DataFrame'i alacaksınız:
Birden Fazla Satır ve Sütun Nasıl Bırakılır?
Yukarıdaki örnek, tek bir satır veya sütunun atılmasını göstermektedir. Birden çok satırı veya sütunu bırakmak isterseniz ne olur?
Bunu başarmak için, bazı küçük değişikliklerle aynı kodu kullanacağız. Tek bir değer kullanmak yerine, birden çok satırı ve sütunu aynı anda kaldırmak için drop işlevine bir argüman listesi sağlayabiliriz .
Diyelim ki ilk 2 satırı DataFrame'imize bırakmak istiyorum. Bunu başarmak için aşağıdaki kodu kullanabiliriz:
# Dropping first 2 rows by index
df = df.drop([0, 1], axis=0)
Bu kodda tercümana 0 ve 1. satırları bırakmasını söylüyoruz. Bu kodun çıktısı aşağıda verilmiştir:
0 ve 1 satırlarının artık DataFrame'de olmadığını görebilirsiniz.
Departman ve Maaş sütunlarını da bırakalım. Bunu yapmak için aşağıdaki kodu kullanabiliriz:
# Dropping columns by name
df = df.drop(['Salary', 'Department'], axis=1)
Bu Python betiğinde, tercümandan sütun başlıkları olarak Maaş ve Departman sütunlarını bırakmasını istiyoruz. Bu kodun çıktısı aşağıda verilmiştir:
Bu bizim son DataFrame'imiz. Toplamda, drop yöntemini kullanarak DataFrame'imizden iki satır ve iki sütun sildik.
Pandalarda MultiIndex hakkında daha fazla bilgi edinmek için aşağıdaki videoyu izleyin:
Inplace ile Satırları ve Sütunları Bırakma
Önceki örnekte, önce DataFrame üzerinde değişiklikler yaptığımızı ve ardından onu yeni bir DataFrame olarak kaydettiğimizi görebilirsiniz. Ancak bu, satırları ve sütunları çıkarmanın etkili bir yolu değildir.
Satırları ve sütunları bırakmanın başka bir alternatifi , bırakma işlevinin yer değiştirme bağımsız değişkenini True olarak ayarlamaktır .
inplace parametresini True olarak ayarlayarak DataFrame'i yeniden atamak zorunda kalmadan kalıcı olarak değiştirebilirsiniz.
Bu, yeni bir DataFrame oluşturulmasını önleyerek bellek tasarrufu sağlayabileceğinden, büyük DataFrame'lerle uğraşırken kullanışlıdır.
Aşağıda, satırları ve sütunları inplace ile bırakma örneği verilmiştir :
# Dropping rows by index inplace
df.drop(labels=[0, 1], axis=0, inplace=True)
# Dropping columns by name inplace
df.drop(['Salary', 'Department'], axis=1, inplace=True)
Yukarıdaki kodun çıktısı aşağıda verilmiştir:
Burada yeni bir DataFrame oluşturmadığımızı, orijinalinde değişiklikler yaptığımızı görebilirsiniz.
Pandalarda İndekslerle Nasıl Çalışılır?
Bu bölümde, bir pandas DataFrame'de dizinlerle nasıl çalışılacağını tartışacağız . Aşağıdaki iki alt bölümü ele alacağız:
Dizini ayarla ve sıfırla
Kimlik ve dizin Sütunu
1. İndeks Nasıl Ayarlanır ve Sıfırlanır
Pandalarla çalışmanın önemli bir yönü, dizin sütunlarının nasıl ayarlanıp sıfırlanacağını anlamaktır. Dizin, her satır için bir anahtar tanımlayıcıdır ve onu değiştirmek isteyebileceğiniz durumlar vardır.
Yeni Dizin Ayarlama
Yeni bir dizin ayarlamak için set_index() yöntemini kullanabilirsiniz . set_index sözdizimi aşağıda verilmiştir:
df.set_index('column_name', inplace=True)
Buradaki inplace=True bağımsız değişkeni , mevcut DataFrame'de değişiklikler yaptığımız anlamına gelir.
Bunu göstermek için aşağıdaki DataFrame'i kullanacağız:
Diyelim ki Name sütununu DataFrame'imizin dizini yapmak istiyoruz. Bunu başarmak için aşağıdaki kodu kullanabiliriz:
df.set_index('Name', inplace=True)
Bu Python betiği, Name'i DataFrame'imizin dizini yapacak . Bu kodun çıktısı aşağıda verilmiştir:
İndeks değerlerinin sıfırlanması
Dizini varsayılan biçimine sıfırlamak için (yani, 0'dan DataFrame eksi 1'in uzunluğuna bir RangeIndex ), reset_index() yöntemini kullanabilirsiniz .
reset_index() sözdizimi aşağıda verilmiştir:
df.reset_index(drop=True, inplace=True)
drop=True ayarlandığında , geçerli dizin sütunu kaldırılırken inplace=True , değişikliklerin yeni bir tane oluşturmadan doğrudan DataFrame'e uygulanmasını sağlar.
Bu kodu önceki DataFrame'e uyguladığımızda aşağıdaki çıktıyı alırız:
Önceden indeksimiz olan Name'in varsayılan değerlere sıfırlandığını görebilirsiniz.
2. İndeks Sütunu ile Diğer İşlemler
Örneğin bir CSV dosyasından bir DataFrame içe aktarırken, dizininiz olarak kullanılacak bir sütun belirtmek için index_col parametresini kullanabilirsiniz.
index_col sözdizimi aşağıda verilmiştir:
df = pd.read_csv('data.csv', index_col='column_name')
Ayrıca, bir DataFrame'i dizin sütunu olmadan dışa aktarmak isterseniz, dizin parametresini Yanlış olarak ayarlayabilirsiniz.
Bu yöntemin sözdizimi aşağıda verilmiştir:
df.to_csv('output.csv', index=False)
Artık dizini düşürme yöntemini anladığınıza göre, bir sonraki bölümde bırakma işlevini kullanırken hataları nasıl ele alabileceğinize bakalım.
Pandalarda Bırakma İşlevini Kullanırken Hatalarla Nasıl Başa Çıkılır?
Bu bölümde, bir DataFrame'den dizin sütunlarını kaldırmak için pandaların bırakma işlevini kullanırken hataların ve özel durumların nasıl ele alınacağını keşfedeceğiz .
Spesifik olarak, aşağıdakileri tartışacağız:
KeyError İşleme
Yinelenen satırlarla çalışma
1. KeyError Nasıl Kullanılır?
Pandalarda drop işlevini kullanırken , belirtilen dizin veya sütun DataFrame'de bulunmazsa bir KeyError ile karşılaşabilirsiniz.
Bu hatanın oluşmasını önlemek için, error parametresini kullanabilirsiniz . Errors parametresinin iki seçeneği vardır: 'yükselt' ve 'yok say' . Varsayılan olarak, 'raise' olarak ayarlanmıştır, bu, belirtilen dizin veya sütun bulunmazsa bir KeyError'ın yükseltileceği anlamına gelir.
Ancak, hatayı bastırmak ve kodu yürütmeye devam etmek istiyorsanız bunu 'yok say' olarak ayarlayabilirsiniz.
Aşağıdaki DataFrame'e sahip olduğumuzu varsayalım. DataFrame'de olmayan bir satırı bırakmayı deneyelim ve ne olduğunu görelim:
# Attempt to drop a non-existent index, will raise KeyError
# df.drop(5, inplace=True)
Python betiği aşağıdaki hatayı verecektir:
Bu tür hataları işlemek için, veri kümesinde bulunan satırlara başvurduğunuzdan emin olun.
2. Yinelenen Satırlarla Nasıl Çalışılır?
Verileri temizlerken önemli bir görev, kopyaları aramak ve bunları kaldırmaktır.
Bir DataFrame'de yinelenen satırlarla uğraşmak, bırakma işlevini kullanırken karmaşıklığı artırabilir .
Yinelenen dizin değerlerine dayalı olarak satırları bırakmak istiyorsanız, yinelenen işlevi kullanabilir ve ardından yalnızca yinelenmeyen satırları seçmek için boole indekslemeyi kullanabilirsiniz.
Aşağıdaki DataFrame'e sahip olduğumuzu varsayalım:
Veri kümemizde yinelenen dizinler olduğunu görebilirsiniz. Yinelenenleri kaldırmak için, önce aşağıdaki kodla yinelenen değerleri belirleyeceğiz:
# Find duplicated index values
duplicated_rows = df.index.duplicated(keep='first')
Bundan sonra, yalnızca yinelenmemiş satırları seçeceğiz ve bunları aşağıdaki kodla önceki DataFrame'de saklayacağız:
# Select only non-duplicated rows
df = df[~duplicated_rows]
Nihai çıktı aşağıda verilmiştir:
Son çıktıda artık yinelenen satırlar yok.
Son düşünceler
Veri bilimi ve analitik yolculuğunuza devam ederken, verileri nasıl manipüle edeceğinizi ve yöneteceğinizi anlamak, en önemlisi olacak bir beceridir.
Pandalarda dizin bırakmak gibi işlemlerde uzmanlaşmak bunun önemli bir parçasıdır. Bir dizini nasıl sıfırlayacağınızı veya bırakacağınızı bilmek, verilerinizi temizlemeye, dönüştürmeye ve değerli içgörüler elde etmeye yönelik bir basamaktır.
İndeksleri nasıl bırakacağınızı öğrenerek, DataFrame'lerinizi daha etkili bir şekilde yeniden şekillendirebileceksiniz. Ayrıca okunması ve analiz edilmesi daha kolay olan daha temiz veri kümeleri oluşturabileceksiniz. Ek olarak, dizin çakışmalarının ortaya çıkabileceği birden çok DataFrame'i birleştirirken veya birleştirirken dizinleri sıfırlamak çok önemli olabilir.
Dizinleri bırakma yeteneği, veri kümeleriniz üzerinde daha fazla kontrole ve esnekliğe sahip olmanızı sağlar!
Excel hücrelerini metne sığdırmak için güncel bilgileri ve 4 kolay çözümü keşfedin.
Bir Excel Dosyasının Boyutunu Küçültmek için 6 Etkili Yöntem. Hızlı ve kolay yöntemler ile verilerinizi kaybetmeden yer açın.
Python'da Self Nedir: Gerçek Dünyadan Örnekler
R'de bir .rds dosyasındaki nesneleri nasıl kaydedeceğinizi ve yükleyeceğinizi öğreneceksiniz. Bu blog aynı zamanda R'den LuckyTemplates'a nesnelerin nasıl içe aktarılacağını da ele alacaktır.
Bu DAX kodlama dili eğitiminde, GENERATE işlevinin nasıl kullanılacağını ve bir ölçü başlığının dinamik olarak nasıl değiştirileceğini öğrenin.
Bu eğitici, raporlarınızdaki dinamik veri görselleştirmelerinden içgörüler oluşturmak için Çok Kanallı Dinamik Görseller tekniğinin nasıl kullanılacağını kapsayacaktır.
Bu yazıda, filtre bağlamından geçeceğim. Filtre bağlamı, herhangi bir LuckyTemplates kullanıcısının başlangıçta öğrenmesi gereken en önemli konulardan biridir.
LuckyTemplates Apps çevrimiçi hizmetinin çeşitli kaynaklardan oluşturulan farklı raporların ve içgörülerin yönetilmesine nasıl yardımcı olabileceğini göstermek istiyorum.
LuckyTemplates'da ölçü dallandırma ve DAX formüllerini birleştirme gibi teknikleri kullanarak kâr marjı değişikliklerinizi nasıl hesaplayacağınızı öğrenin.
Bu öğreticide, veri önbelleklerini gerçekleştirme fikirleri ve bunların DAX'ın sonuç sağlama performansını nasıl etkilediği tartışılacaktır.