Aracılığıyla paylaş


Anlamsal modellerde ve veri çerçevelerinde ilişkileri keşfetme ve doğrulama

Bu makalede, Power BI anlam modellerinizde ve pandas DataFrame'lerinizde ilişkileri keşfetmek ve doğrulamak için SemPy anlamsal bağlantı işlevlerini kullanmayı öğreneceksiniz.

Veri bilimi ve makine öğrenmesinde verilerinizin yapısını ve ilişkilerini anlamak önemlidir. Power BI, bu yapıları ve ilişkileri modellemenize ve görselleştirmenize olanak tanıyan güçlü bir araçtır. Daha fazla içgörü elde etmek veya makine öğrenmesi modelleri oluşturmak için SemPy kitaplık modüllerindeki anlamsal bağlantı işlevlerini kullanarak daha ayrıntılı bilgi edinebilirsiniz.

Veri bilimcileri ve iş analistleri, Power BI anlam modellerindeki ilişkileri listelemek, görselleştirmek ve doğrulamak ya da pandas DataFrames'teki ilişkileri bulup doğrulamak için SemPy işlevlerini kullanabilir.

Önkoşullar

  • Hücrelere kod kopyalamak/yapıştırmak için yeni bir not defteri oluşturun.

  • Spark 3.4 ve üzeri için doku kullanılırken varsayılan çalışma zamanında anlamsal bağlantı kullanılabilir ve yüklemeniz gerekmez. Spark 3.3 veya üzeri için veya anlam bağlantısının en son sürümüne güncelleştirmek için aşağıdaki komutu çalıştırın:

    %pip install -U semantic-link
    
  • Not defterinize bir göl evi ekleyin.

Anlam modellerindeki ilişkileri listeleme

list_relationships Modüldeki sempy.fabric işlev, Power BI anlam modelinde bulunan tüm ilişkilerin listesini döndürür. Liste, verilerinizin yapısını ve farklı tablo ve sütunların nasıl bağlandığınızı anlamanıza yardımcı olur.

Bu işlev, açıklamalı DataFrame'ler sağlamak için anlamsal bağlantı kullanarak çalışır. DataFrame'ler, anlam modeli içindeki ilişkileri anlamak için gerekli meta verileri içerir. Açıklamalı DataFrame'ler, anlamsal modelin yapısını analiz edip makine öğrenmesi modellerinde veya diğer veri çözümleme görevlerinde kullanmayı kolaylaştırır.

işlevini kullanmak list_relationships için önce modülü içeri aktarırsınız sempy.fabric . Ardından, aşağıdaki örnekte gösterildiği gibi Power BI anlam modelinizin adını veya UUID'sini kullanarak işlevini çağırırsınız:

import sempy.fabric as fabric

fabric.list_relationships("my_dataset")

Yukarıdaki kod, işlevi my_dataset adlı bir Power BI anlam modeliyle çağırırlist_relationships. İşlev, ilişki başına bir satır içeren bir pandas DataFrame döndürür ve anlamsal model içindeki ilişkileri kolayca keşfetmenize ve çözümlemenize olanak tanır.

Not

Not defteriniz, Power BI veri kümesi anlam modeliniz ve lakehouse'unuz aynı çalışma alanında veya farklı çalışma alanlarında bulunabilir. Varsayılan olarak, SemPy semantik modelinize şu kaynaktan erişmeye çalışır:

  • Not defterinize bir göl evi eklediyseniz, göl evinizin çalışma alanı.
  • Ekli göl evi yoksa, not defterinizin çalışma alanı.

Anlam modeliniz bu çalışma alanlarının herhangi birinde yer almıyorsa, SemPy yöntemini çağırırken anlamsal modelinizin çalışma alanını belirtmeniz gerekir.

Anlam modellerinde ilişkileri görselleştirme

işlevi, plot_relationship_metadata modelin yapısını daha iyi anlamanız için ilişkileri anlamsal bir modelde görselleştirmenize yardımcı olur. Bu işlev, tablolar ve sütunlar arasındaki bağlantıları görüntüleyen bir grafik oluşturur. Grafik, anlamsal modelin yapısını ve farklı öğelerin nasıl ilişkili olduğunu anlamayı kolaylaştırır.

Aşağıdaki örnekte işlevin nasıl kullanılacağı gösterilmektedir plot_relationship_metadata :

import sempy.fabric as fabric
from sempy.relationships import plot_relationship_metadata

relationships = fabric.list_relationships("my_dataset")
plot_relationship_metadata(relationships)

Yukarıdaki kodda list_relationships işlev, my_dataset semantik modeldeki ilişkileri alır ve plot_relationship_metadata işlev ilişkileri görselleştirmek için bir grafik oluşturur.

Hangi sütunların ekleneceğini tanımlayarak, eksik anahtarların nasıl işleneceğini belirterek ve daha fazla graphviz özniteliği sağlayarak grafı özelleştirebilirsiniz.

Anlam modellerindeki ilişkileri doğrulama

Artık anlam modelinizdeki ilişkileri daha iyi anladığınıza göre, bu ilişkileri doğrulamak ve olası sorunları veya tutarsızlıkları belirlemek için işlevini kullanabilirsiniz list_relationship_violations . İşlev, list_relationship_violations tablolarınızın içeriğini doğrulamanıza yardımcı olarak bunların anlam modelinizde tanımlanan ilişkilerle eşleştiğinden emin olmanıza yardımcı olur.

Bu işlevi kullanarak, belirtilen ilişki çokluğuyla tutarsızlıkları belirleyebilir ve veri analizinizi veya makine öğrenmesi modellerinizi etkilemeden önce sorunları giderebilirsiniz.

işlevini kullanmak list_relationship_violations için önce modülü içeri aktarın sempy.fabric ve anlam modelinizdeki tabloları okuyun. Ardından işlevi, tablo adlarını tablo içeriğiyle DataFrame'lere eşleyen bir sözlükle çağırırsınız.

Aşağıdaki örnek kod, ilişki ihlallerini listelemeyi gösterir:

import sempy.fabric as fabric

tables = {
    "Sales": fabric.read_table("my_dataset", "Sales"),
    "Products": fabric.read_table("my_dataset", "Products"),
    "Customers": fabric.read_table("my_dataset", "Customers"),
}

fabric.list_relationship_violations(tables)

Yukarıdaki kod işlevi, my_dataset anlam modelinden Sales, Products ve Customers tablolarını içeren bir sözlükle çağırırlist_relationship_violations. Bir kapsam eşiği ayarlayarak, eksik anahtarların nasıl işleneceğini belirterek ve raporlanması gereken eksik anahtarların sayısını tanımlayarak işlevi özelleştirebilirsiniz.

İşlev, ilişki ihlali başına bir satır içeren bir pandas DataFrame döndürerek anlam modelinizdeki sorunları kolayca tanımlamanıza ve çözmenize olanak tanır. işlevini kullanarak list_relationship_violations anlamsal modelinizin tutarlı ve doğru olduğundan emin olarak daha güvenilir makine öğrenmesi modelleri oluşturmanıza ve verileriniz hakkında daha derin içgörüler elde etmenize olanak sağlayabilirsiniz.

Pandas DataFrames'te ilişkileri bulma

list_relationshipsDoku modülündeki ve list_relationship_violations plot_relationships_df işlevleri anlamsal modellerdeki ilişkileri keşfetmeye yönelik güçlü araçlar olsa da pandas DataFrames olarak içeri aktarılan diğer veri kaynakları içindeki ilişkileri de bulmanız gerekebilir.

Modüldeki find_relationships sempy.relationship işlev burada devreye girer.

find_relationships Modüldeki sempy.relationships işlev, veri bilimcilerinin ve iş analistlerinin pandas DataFrames listesindeki olası ilişkileri keşfetmesine yardımcı olur. Bu işlevi kullanarak tablolar ve sütunlar arasındaki olası bağlantıları tanımlayabilir ve verilerinizin yapısını ve farklı öğelerin nasıl ilişkili olduğunu daha iyi anlamanıza olanak sağlayabilirsiniz.

Aşağıdaki örnek kod, pandas DataFrames'te ilişkilerin nasıl bulunu olduğunu gösterir:

from sempy.relationships import find_relationships

tables = [df_sales, df_products, df_customers]

find_relationships(tables)

Yukarıdaki kod işlevi üç Pandas DataFrames listesiyle çağırır find_relationships : df_sales, df_productsve df_customers. İşlev, olası ilişki başına bir satır içeren bir pandas DataFrame döndürür ve böylece verilerinizdeki ilişkileri kolayca keşfedip analiz edebilirsiniz.

Bir kapsam eşiği, ad benzerlik eşiği, dışlanması gereken ilişkilerin listesi ve çoka çok ilişkilerin dahil edilip edilmeyeceğini belirterek işlevi özelleştirebilirsiniz.

pandas DataFrames'te ilişkileri doğrulama

işlevini kullanarak find_relationships pandas DataFrame'lerinizdeki olası ilişkileri keşfettikten sonra, bu ilişkileri doğrulamak ve olası sorunları veya tutarsızlıkları belirlemek için işlevini kullanabilirsiniz list_relationship_violations .

İşlev, list_relationship_violations bulunan ilişkilerle eşleştiğinden emin olmak için tablolarınızın içeriğini doğrular. Belirtilen ilişki çokluğuyla tutarsızlıkları belirlemek için bu işlevi kullanarak, veri analizinizi veya makine öğrenmesi modellerinizi etkilemeden önce sorunları giderebilirsiniz.

Aşağıdaki örnek kod, pandas DataFrames'de ilişki ihlallerini nasıl bulacağınız gösterilmektedir:

from sempy.relationships import find_relationships, list_relationship_violations

tables = [df_sales, df_products, df_customers]
relationships = find_relationships(tables)

list_relationship_violations(tables, relationships)

Yukarıdaki kod, işlevi üç pandas DataFrames, , ve df_customersile işlevden find_relationships DataFrame ilişkileri içeren bir listeyle çağırırlist_relationship_violations. df_productsdf_sales İşlev, list_relationship_violations ilişki ihlali başına bir satır içeren bir pandas DataFrame döndürür ve verilerinizdeki sorunları kolayca tanımlamanızı ve çözmenizi sağlar.

Bir kapsam eşiği ayarlayarak, eksik anahtarların nasıl işleneceğini belirterek ve raporlanması gereken eksik anahtarların sayısını tanımlayarak işlevi özelleştirebilirsiniz.

işlevini pandas DataFrames ile kullanarak list_relationship_violations verilerinizin tutarlı ve doğru olduğundan emin olabilir, böylece daha güvenilir makine öğrenmesi modelleri oluşturabilir ve verilerinizle ilgili daha derin içgörüler elde edebilirsiniz.