Ana içeriğe geç
Crosstable önekini kullanma

BU SAYFADA

Crosstable önekini kullanma

Çapraz tablolar, üst bilgi verilerinden oluşan iki dikey liste arasında bir değer matrisi içeren genel bir tablo türüdür. Verilerin çapraz tablosuna sahip olduğunuzda, verileri dönüştürmek ve istenen alanları oluşturmak için Crosstable önekini kullanılabilirsiniz.

Crosstable öneki

Aşağıdaki Product tablosunda, ay başına bir sütununuz ve ürün başına bir satırınız vardır.

Ürün tablosu
Ürün Jan 2014 Feb 2014 Mar 2014 Apr 2014 May 2014 Jun 2014
A 100 98 100 83 103 82
B 284 279 297 305 294 292
C 50 53 50 54 49 51

Tabloyu yüklediğinizde sonuç olarak Product için bir alan ve her ay için birer alan elde edilir.

Product alanına ve her ay için birer alana sahip Product tablosu
Product table with Product field, and one field each for the months.

Bu verileri analiz etmek istiyorsanız tüm rakamların bir alanda ve tüm ayların başka bir alanda olması işleri kolaylaştırır. Bu durumda, her kategori için (Product, Month, Sales) bir sütuna sahip olan üç sütunlu bir tablodur.

Product, Month ve Sales alanlarına sahip Product tablosu
Product table with Product, Month, and Sales fields.

Crosstable öneki, verileri Month için bir sütun ve Sales için bir sütunun bulunduğu bir tabloya dönüştürür. Bunu ifade etmenin diğer yolu, alan adlarını alıp bunları alan değerlerine dönüştürdüğüdür.

Aşağıdakileri yapın:

  1. Yeni bir uygulama oluşturun ve uygulamaya Gelişmiş Kodlama Öğreticisi adını verin.
  2. Veri yükleme düzenleyicisi'ne yeni bir kod bölümü ekleyin.
  3. Bölüme Product adını verin.
  4. Sağ menüdeki DataFiles altında Veri seç'e tıklayın.

  5. Karşıya yükleyin ve ardından Product.xlsx öğesini seçin.
  6. Veri seçme kaynağı: penceresinde Product tablosunu seçin.
  7. İpucu notuAlan adları altında, veri yüklerken tablo alanlarının adlarını dahil etmek için Eklenmiş alan adları'nın seçildiğinden emin olun.
  8. Kod ekle'ye tıklayın.
  9. Kodunuz şöyle görünmelidir:

    LOAD Product, "Jan 2014", "Feb 2014", "Mar 2014", "Apr 2014", "May 2014", "Jun 2014" FROM [lib://DataFiles/Product.xlsx] (ooxml, embedded labels, table is Product);

  10. Verileri yükle'ye tıklayın.
  11. Veri modeli görüntüleyicisi'ni açın. Veri modeli artık şöyle görünür:
  12. Product alanına ve her ay için birer alana sahip Product tablosu
    Product table with Product field, and one field each for the months.

  13. Veri yükleme düzenleyicisi'nde, Product sekmesine tıklayın.
  14. LOAD deyiminin üzerine şunu girin:
  15. CrossTable(Month, Sales)

  16. Verileri yükle'ye tıklayın.
  17. Veri modeli görüntüleyicisi'ni açın. Veri modeli artık şöyle görünür:
  18. Product, Month ve Sales alanlarına sahip Product tablosu
    Product table with Product, Month, and Sales fields.

    Giriş verilerinin, genellikle dahili anahtar (bu örnekte Product) olarak niteleyici alan olan yalnızca bir sütunu olduğunu unutmayın. Ancak sizin birkaç tane olabilir. Bu durumda, tüm niteleyici alanlar LOAD deyiminde öznitelik alanlarından önce listelenmelidir ve niteleyici alanların sayısını tanımlamak için Crosstable önekinin üçüncü parametresi kullanılmalıdır. Crosstable anahtar sözcüğünden önce LOAD deyimi veya bir örnek koyamazsınız. Fakat otomatik birleştirme kullanabilirsiniz.

    Qlik Sense tablosunda verileriniz şu şekilde görünür:

    Crosstable öneki kullanılarak yüklenen veriyi gösteren tablo
    Table showing data loaded using Crosstable prefix.

    Örneğin şimdi de verileri kullanarak bir sütun grafik oluşturun:

    Crosstable öneki kullanılarak yüklenen veriyi gösteren sütun grafik
    Bar chart showing data loaded using the Crosstable prefix.

Bilgi notu Crosstable hakkında daha fazla bilgi almak için Qlik Community bölümündeki blog gönderisine göz atın: The Crosstable Load (Crosstable Yükleme). Davranışlar QlikView bağlamında açıklanmıştır. Fakat kullanılan mantık, Qlik Sense için de geçerlidir.

Sayısal yorumlama, öznitelik alanları için kullanılmayacaktır. Bu, sütun üst bilgileri olarak elinizde ayarlar olduğunda, bunların otomatik olarak yorumlanmayacağı anlamına gelir. Bunun çözümü, geçici bir tablo oluşturmak için Crosstable öneki kullanmak ve yorumlamaları aşağıdaki örnekte gösterildiği gibi yapmak için ikinci bir geçiş gerçekleştirmektir:

Bunun yalnızca bir örnek olduğunu unutmayın. Qlik Sense içinde tamamlanması gereken başka bir alıştırma yoktur.

tmpData: Crosstable (MonthText, Sales) LOAD Product, [Jan 2014], [Feb 2014], [Mar 2014], [Apr 2014], [May 2014], [Jun 2014] FROM ... Final: LOAD Product, Date(Date#(MonthText,'MMM YYYY'),'MMM YYYY') as Month, Sales Resident tmpData; Drop Table tmpData;

Önbelleği temizleme

Önbelleği temizlemek için oluşturduğunuz tabloları silebilirsiniz. Önceki bölümde olduğu gibi geçici bir yükleme yaparsanız, artık ihtiyaç kalmadığında bunu bırakmanız gerekir. Örneğin:

DROP TABLE Table1, Table2, Table3, Table4; DROP TABLES Table1, Table2, Table3, Table4;

Ayrıca alanları da bırakabilirsiniz. Örneğin:

DROP FIELD Field1, Field2, Field3, Field4; DROP FIELDS Field1, Field2, Field3, Field4; DROP FIELD Field1 from Table1; DROP FIELDS Field1 from Table1;

Görebileceğiniz üzere, TABLE ve FIELD anahtar sözcükleri tekil veya çoğul olabilir.