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
Microsoft Fabric aboneliği alın. Alternatif olarak, ücretsiz bir Microsoft Fabric deneme sürümüne kaydolun.
Synapse Veri Bilimi deneyimine geçmek için giriş sayfanızın sol tarafındaki deneyim değiştiriciyi kullanın.
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_relationships
Doku 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_products
ve 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_customers
ile işlevden find_relationships
DataFrame ilişkileri içeren bir listeyle çağırırlist_relationship_violations
. df_products
df_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.
İlgili içerik
- Anlamsal işlevler hakkında bilgi edinin
- SemPy başvuru belgelerini kullanmaya başlama
- Öğretici: Anlamsal bağlantı kullanarak anlamsal modeldeki ilişkileri bulma
- Öğretici: Anlam bağlantısı kullanarak Synthea veri kümesindeki ilişkileri bulma
- Verilerinizdeki işlevsel bağımlılıkları algılama, keşfetme ve doğrulama