Pandalarla veri indeksleme ve seçme

Pandalarda bir indeksleme örneğine bakalım. Bu yazıda CSV yüklemek için "nba.csv ‚" dosyasını kullanıyoruz, burada .

Çoklu satır ve çoklu sütun seçimi

Hadi biraz sahte veri içeren bir DataFrame alalım, şimdi bunu indeksliyoruz DataFrame.Bunda, DataFrame`den birden çok satır ve birden çok sütun seçiyoruz.Veri kümeli veri çerçevesi.

Yalnızca Yaş , Üniversite ve Maaş sütunlarını seçmek istediğimizi varsayalım. Amir Johnson ve Terry Rozier

Son DataFrame`imiz hasta şu şekilde görünüyor:

Birden çok satırı ve tüm sütunları seçin

Diyelim ki Amir Jhonson satırını seçmek istiyoruz, Terry Rozier ve John Holland veri çerçevesindeki tüm sütunlarla birlikte .

Son DataFrame`imiz şöyle görünecek:

Bazı sütunları ve tüm satırları seçme

Diyelim ki Yaş, Boy ve Maaş sütunlarını seçin veri çerçevesindeki tüm satırlarla birlikte.

Son DataFrame`imiz şöyle görünecek:

< /figure>

[] kullanarak pandaları indeksleme, .loc [] , . iloc [] , Dataframe .loc [] : bu fonksiyon etiketler için kullanılır.
  • Dataframe.iloc [] : bu işlev konumlar veya tamsayılar için kullanılır
  • Dataframe.ix [] : bu işlev hem etiketler hem de tamsayılar için kullanılır.
  • Toplu olarak bunlara dizin oluşturucular denir. Bunlar, verileri endekslemenin açık ara en yaygın yollarıdır. Bunlar, bir DataFrame`den öğeler, satırlar ve sütunlar almanıza yardımcı olan dört işlevdir.

    Bir Dataframe`i [] indeksleme operatörünü kullanarak indeksleme: < br>Operatör indeksleme, bir nesneyi izleyen köşeli parantezlere atıfta bulunmak için kullanılır. , index_col = "Ad" )




    kod sınıfı = "yorumlar"> # dizin operatörünü kullanarak sütunları çıkarma

    ilk = data [ "Yaş" ]



    print (ilk)

    Çıkış:

    Birden çok sütun seçme

    Birden çok sütun seçmek için, indeksleme ifadesinde bir sütun listesi iletmeliyiz .


    # import pandas paketi

    import pa n das as pd


    # CSV dosyasından veri çerçevesi oluştur

    veri = pd.read_csv ( "nba.csv" , index_col = " Name " )


    # indeks operatörünü kullanarak birden çok sütun getir

    ilk = veri [[ "Yaş" , "Üniversite" , "Maaş" ]]




    ilk

    Çıkış:

    DataFrame`i , index_col = "Ad" )


    # loc yöntemini kullanarak dize okumasını çıkar

    first = < /kod> veri .loc [ "Avery Bradley" ]

    saniye = data.loc [ "RJ Hunter" ]



    yazdır (ilk, "" , ikinci)

    Çıktı:
    Çıktı görüntüsünde gösterildiği gibi, her iki seferde de yalnızca bir parametre olduğu için iki seri döndürüldü.


    Birden fazla satır seçmek için tüm satır etiketlerini bir listeye koyarız ve bunları fonksiyonuna geçiririz . loc .


    import pd olarak pandalar


    # CSV dosyasından veri çerçevesi oluştur

    data = pd.read_csv ( "nba.csv" , index_col = "Ad" )


    # loc yöntemini kullanarak birden çok satır alın

    ilk = data.loc [[ "Avery Bradley" , " RJ Hunter " ]]

    print (ilk)

    < /tr>

    Çıktı:

    İki satır ve üç sütun seçme

    İki satır ve üç sütun seçmek için iki satırı seçiyoruz ve üç sütun seçip ayrı bir listeye koymak istiyoruz:


     Dataframe.loc [["satır1", "satır2"], ["column1", "column2", "column3"] ] 

    import pandaları pd olarak


    # CSV dosyasından veri çerçevesi oluştur

    data = pd.read_csv ( "nba.csv" < kod sınıfı = "düz">, index_col = "Ad" )


    # ayıklama loc yöntemini kullanan iki satır ve üç sütun

    ilk = data.loc [[ "Avery Bradley" , "RJ Hunter" ] ,

    [ "Takım" , "Sayı" , "Konum" ]]



    yazdır (ilk)

    Çıktı:

    <şekil sınıfı = aligncenter amp-wp-inline-c33dc2c8566cd0d06c85b60cb1b54495>


    Tüm satırları ve bazı sütunları seçme

    Tüm satırları ve bazılarını seçmek için sütunlar, tüm satırları seçmek için tek bir iki nokta üst üste [:], kullanırız ve seçmek istediğimiz bazı sütunların listesi aşağıdaki gibidir:

     Dataframe.loc [[: , ["column1", "column2", "column3"]] 

    < tbody>

    import pandaları pd olarak


    # CSV dosyasından veri çerçevesi oluştur

    data = pd.read_csv ( "nba.csv" , index_col = "Ad" )


    # loc yöntemini kullanarak tüm satırları ve bazı sütunları getir

    first = data.loc [:, [ "Ekip" , "Sayı" , "Konum" ]]



    print ( ilk)

    Çıkış:

    DataFrame kullanarak indeksleme . iloc [] :
    Bu işlev, satırları ve sütunları konuma göre almamızı sağlar. Bunu yapmak için ihtiyacımız olan satırların konumlarını ve ihtiyacımız olan sütunların konumlarını belirtmemiz gerekiyor. df.iloc , df.loc öğesine çok benzer, ancak seçim için yalnızca tamsayı konumlarını kullanır.

    Tek satır seçim

    .iloc [] kullanarak bir satır seçmek için .iloc [] öğesine bir tamsayı iletebiliriz.

    içe aktar pandaları pd olarak


    # CSV dosyasından veri çerçevesi oluştur

    data = pd.read_csv ( "nba.csv" , index_col = "Ad" )



    # iloc satırların çıkarılması

    row2 = data.iloc [ 3 ]




    yazdır (row2)

    Çıkış:


    veri = pd.read_csv ( " nba.csv " , index_col = "Ad" )



    # iloc yöntemini kullanarak birden çok satır alma

    satır2 = data.iloc [[ 3 , 5 , 7 ]]




    satır2

    Çıkış:


    İki satır ve iki sütun seçme

    İki satır ve iki sütun seçmek için, dizeler için 2 tamsayı ve sütunlar için 2 tamsayılık bir liste oluşturuyoruz ve ardından .iloc [] işlevini iletiyoruz.


    < kod sınıfı = "anahtar kelime"> içe aktar pandaları pd olarak


    # veri çerçevesi oluştur CSV dosyası

    data = pd.read_csv ( "nba.csv" , index_col = "Ad" )



    # çıkarma iloc yöntemini kullanan iki satır ve iki sütundan

    row2 = data.iloc [[[ 3 , 4 ], [ 1 , 2 ]]

    yazdır (satır2)

    Çıkış:

    Tüm satırları ve bazı sütunları seçin

    Tüm satırları ve bazı sütunlarda, tüm satırları seçmek için tek bir iki nokta üst üste [:], kullanırız ve r sütunları, bir tamsayı listesi oluşturuyoruz ve ardından .iloc [] işlevini iletiyoruz.



    içe aktar pandaları pd olarak


    # CSV dosyasından veri çerçevesi oluştur

    data = pd.read_csv ( < kod sınıfı = "dize"> "nba.csv" , index_col = "Ad" )



    # iloc yöntemini kullanarak tüm satırların ve bazı sütunların çıkarılması

    satır2 = data.iloc [:, [ 1 , 2 ]]

    yazdır (satır2)

    Çıkış:

    .ix [] as . loc []

    Bir satır seçmek için fonksiyonuna tek satır etiketi koyarız.ix .Bu fonksiyon .loc gibi davranır. [] satır etiketini fonksiyona argüman olarak iletirsek.


    # pandas paketini içe aktar

    içe aktar pd olarak pandalar


    # CSV dosyasından veri çerçevesi oluşturun

    veri = pd.read_csv ( " nba.csv " , index_col = "Ad" )


    # ix yöntemini kullanarak bir dize alma

    ilk = data.ix [ "Avery Bradley" ]




    yazdır (ilk)

    Çıkış:

    .ix [] olarak pandaları as pd


    # bir CSV dosyasından bir veri çerçevesi oluşturun

    veri = pd.read_csv ( "nba.csv" , index_col = "Ad" )


    # ix yöntemini kullanarak bir dize alma

    first = data.ix [ 1 ]


    yazdır (ilk)

    Çıkış:

    < şekil sınıfı = aligncenter amp-wp-inline-71b6f2deb98f54bf23d07f2b79530929>


    DataFrame`de İndeksleme Yöntemleri

    Açıklama < /tr>
    Function
    Dataframe.head () Bir veri çerçevesinin en üst n satırını döndürür.
    Dataframe.tail () Bir veri çerçevesinin alt n satırını döndürür.
    Dataframe.at [] Bir satır/sütun etiket çifti için tek bir değere erişin.
    Dataframe.iat [] Tamsayı konumuna göre bir satır/sütun çifti için tek bir değere erişin.
    Dataframe.tail () Pozisyona göre seçim için tamamen tamsayı-konuma dayalı indeksleme.
    DataFrame.lookup () DataFrame için etiket tabanlı "fantezi indeksleme" işlevi.
    DataFrame .pop () Öğeyi döndür ve çerçeveden bırak.
    DataFrame.xs() DataFrame`den bir kesit (satır(lar) veya sütun(lar)) döndürür.
    DataFrame.get () Verilen anahtar için nesneden öğe alın (DataFrame sütunu, Panel dilimi vb.).
    DataFrame.isin () Boolean DataFrame olup olmadığını gösteren dönüş içindeki her eleman DataFrame değerlerde bulunur.
    DataFrame.where () self ile aynı şekle sahip bir nesne döndürür ve buna karşılık gelen girdileri cond True ve aksi halde other`dan olan self`ten gelir.< /td>