Excel Power Query, farklı formatlardaki veri kaynağında bulunan verinin, üzerinde düzenlemeler yaptıktan sonra tablo oluşturulabilmesini sağlayan MS Office Excel eklentisidir.
Bu makalede; Json verisini kullanarak, kullanıcının anlayabileceği bir tablo yapısına dönüştürme yöntemlerine değinilecektir.
Makaleyi yazmamdaki motivasyonum; yazılım geliştiren birisiyim ve iş birimi, benden çalıştığım projeye ait kayıtları excel olarak istedi. İstenen veriler, ilişkili ve iç içe verilerden oluşmaktadır. (Recursive and nested data)
Kompleks Sql sorguları ile uğraşmanın vakit kaybı olacağını öngördüğümden veriyi Json formatında elde ettikten sonra iş birimlerine anlamlı bir yapıda sunmak için kullandığım bir tekniktir.
Bu teknik, Sql sorguları ile harcayacağım zamandan tasarruf etmemi ve kolay bir şekilde veriyi analiz etmemi sağladı.
Yazılım geliştiren kişilerin, exceli temel seviyede kullanabilmesi gerektiğini düşünüyorum.
Veride Çalışmaya Başlayalım :)
Aşağıdaki Json dosyasını ele alalım. Oldukça basit değil mi?
"Tablodan Aralık" tan butonuna tıkladıktan sonra ilgili hücre seçili olacak ve Tamam butonuna tıklanır.
"Dönüştür - Transform" sekmesine tıklanıp "Ayrıştırma- Parse" alanına tıklanıp "JSON" seçilir. Bu şekilde ilgili stringin JSON parse yöntemiyle ayrıştırılması sağlanacaktır.
Listenin detayına ulaşıp, excelde satırları oluşturmaya başlamak için "Yeni Satırlara Genişlet" sekmesine tıklanır.
Tıklama işlemi sonrasında "users" listesinde üç adet kayıt olduğu görülmektedir. "Record" listenin bir elemanını belirtir. Detayına da "Record" yazısının yanındaki boşluğa tıklanarak aşağıdaki gibi görülmektedir.
Verinin oluşturmuş hali aşağıdaki gibidir.
Filtreleme ve isim değiştirme işlemleri excel işlemlerinden aşina olunan özelliklerdir.
Sonradan bu veri kaynağında düzenleme yapabilmek için "Sorgular ve Bağlantılar - Queries and Connections" alanından aşağıdaki gibi Düzenle butonuna tıklanarak eklenti ekranı açılır.
Aşağıdaki Json verisinde iç içe (nested) veriler olabilir. Bağlı listeler, recursive yapılar, ilişkili veriler bu yapıda bulunan senaryo örnekleridir.
Bu sefer farklı bir yöntem olarak, elinizde json uzantılı bir dosya olabilir. Dosyada, yukarıdaki json verisi yer almaktadır.
Veri - Data sekmesinden Verileri Al -> Dosyadan sekmesi üzerinden "Json'dan - From Json" sekmesine tıklanarak json dosyası seçilir.
Seçim sonrasında Power Query eklentisinin ekranı açılır. Dosyada 3 adet elemanı bulunan bir liste vardır.
Listedeki verileri ayrıştırmak için Liste'ye sağ tıklanıp "Tabloya" sekmesine tıklanır.
İşlem sonrasında liste detayına ulaşılmıştır.
Bir önceki örnekteki gibi genişletildikten sonra ilişkili verilerin olduğu veriler yer alır. Json'deki batters ve tapping propertyleri için detaylar olduğu görünecektir. Column1.tapping kolonunda Json'deki tapping propertysinde liste bulunduğu için hücrede List yazmaktadır. Bunun anlamı, satır sayısının artacaktır.
İlerleyen adımlarda satır sayısı, ilişkilerden dolayı artacaktır.
Verileri genişletilip detaylara ulaşıldı. Tabloda olması istenmeyen sütunun kaldırılması için sütuna sağ tıklanarak Kaldır sekmesine tıklanır.
"Kapat ve Yükle - Close and Load" butonu ile veriler taşınır.
Bu makalede; Json verilerinin Excel Power Query eklentisi ile iki farklı yöntemle ayrıştırma
ve düzenleme yaparak tabloya dönüştürülmesi anlatıldı.
Motivasyon bölümünde de ifade ettiğim gibi;
Yazılım geliştiren kişilerin, exceli temel seviyede kullanabilmesi gerektiğini düşünüyorum.
Yazının faydalı olmasını umarak çalışmalarınızda kolaylıklar diliyorum :)
Yorumlar
Yorum Gönder