Rumah Kewangan Peribadi Bekerja dengan Data Grafik dalam Python untuk Sains Data - dummies

Bekerja dengan Data Grafik dalam Python untuk Sains Data - dummies

Isi kandungan:

Video: What REALLY is Data Science? Told by a Data Scientist 2024

Video: What REALLY is Data Science? Told by a Data Scientist 2024
Anonim

Kebanyakan saintis data mesti berfungsi dengan data graf pada satu ketika. Python memberi anda fungsinya. Bayangkan titik data yang disambungkan ke titik data lain, seperti bagaimana satu halaman web disambungkan ke laman web lain melalui hiperpautan. Setiap titik data adalah nod . Node bersambung ke satu sama lain menggunakan pautan .

Tidak semua pautan nod ke setiap nod lain, jadi sambungan nod menjadi penting. Dengan menganalisis nod dan pautan mereka, anda boleh melakukan pelbagai tugas menarik dalam sains data, seperti menentukan cara terbaik untuk mendapatkan dari kerja ke rumah anda menggunakan jalan-jalan dan lebuh raya.

Memahami matriks bersebelahan

Matriks Matriks mewakili sambungan antara nod grafik. Apabila terdapat sambungan di antara satu nod dan yang lain, matriks menunjukkan ia sebagai nilai yang lebih besar daripada 0. Perwakilan tepat sambungan dalam matriks bergantung kepada sama ada grafik diarahkan (di mana arah sambungan itu penting) atau tidak diarahkan.

Masalah dengan banyak contoh dalam talian adalah bahawa para penulis membuatnya mudah untuk tujuan penerangan. Walau bagaimanapun, graf dunia sebenar sering kali besar dan menentang analisis mudah semata-mata melalui visualisasi. Cukup fikirkan bilangan nod yang mungkin ada bandar kecil ketika mempertimbangkan jalan persilangan. Ramai grafik lain jauh lebih besar, dan hanya melihat mereka tidak akan mendedahkan apa-apa corak yang menarik. Ahli sains data memanggil masalah dalam membentangkan mana-mana graf yang kompleks menggunakan matriks adjacency a hairball .

Satu kunci untuk menganalisis matriks persekitaran adalah untuk menyusunnya dengan cara tertentu. Sebagai contoh, anda mungkin memilih menyusun data mengikut sifat selain daripada sambungan sebenar. Grafik sambungan jalan mungkin termasuk tarikh jalan yang terakhir diturap dengan data, membolehkan anda mencari corak yang mengarahkan seseorang berdasarkan jalan-jalan yang dalam pembaikan yang terbaik. Ringkasnya, membuat data grafik berguna menjadi perkara yang memanipulasi organisasi data tersebut dengan cara tertentu.

Menggunakan asas NetworkX

Bekerjasama dengan grafik boleh menjadi sukar jika anda perlu menulis semua kod dari awal. Mujurlah, pakej NetworkX untuk Python memudahkan untuk membuat, memanipulasi, dan mengkaji struktur, dinamik, dan fungsi rangkaian kompleks (atau graf). Anda boleh menggunakan pakej ini untuk bekerja dengan digraphs dan multigraphs juga.

Penekanan utama NetworkX adalah untuk mengelakkan keseluruhan masalah bola rambut.Penggunaan panggilan mudah menyembunyikan banyak kerumitan bekerja dengan graf dan matriks adjacency dari pandangan. Contoh berikut menunjukkan cara mencipta matriks jejak asas dari salah satu graf yang disediakan oleh NetworkX:

networkx import sebagai nx G = nx. cycle_graph (10) A = nx. adjacency_matrix (G) print (A todense ())

Contoh bermula dengan mengimport pakej yang diperlukan. Ia kemudiannya membuat grafik menggunakan template cycle_graph (). Grafik mengandungi sepuluh nod. Memanggil adjacency_matrix () mencipta matriks adjacency dari graf. Langkah terakhir ialah mencetak output sebagai matriks, seperti ditunjukkan di sini:

[[0 1 0 0 0 0 0 0 1] [1 0 1 0 0 0 0 0 0] [0 1 0 1 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 1 0 0] [0 0 0 0 0 0 1 0 1 0] [0 0 0 0 0 0 0 1 0 1] [1 0 0 0 0 0 0 0 1 0]]

Anda tidak perlu membina graf anda sendiri dari awal untuk tujuan ujian. Laman NetworkX menyalin beberapa jenis grafik standard yang boleh anda gunakan, semuanya boleh didapati dalam IPython.

Sangat menarik untuk melihat bagaimana graf kelihatan selepas anda menjana. Kod berikut memaparkan graf untuk anda.

Merancang graf asal.
import matplotlib. pyplot sebagai plx nx. draw_networkx (G) plt. tunjukkan ()

Plot menunjukkan bahawa anda boleh menambah tepi antara node 1 dan 5. Berikut adalah kod yang diperlukan untuk melakukan tugas ini menggunakan fungsi add_edge ().

Merancang penambahan grafik.
G. add_edge (1, 5) nx. draw_networkx (G) plt. tunjukkan ()
Bekerja dengan Data Grafik dalam Python untuk Sains Data - dummies

Pilihan Editor

Cara RSVP ke Acara di Ning - patung

Cara RSVP ke Acara di Ning - patung

Di Ning, setelah anda menemukan persidangan itu mencari atau parti yang ingin anda hadiri, anda perlu RSVP untuk acara tersebut supaya pihak penganjur boleh mendapatkan jumlah minuman, makanan dan barang yang sesuai untuk semua peserta - dan juga rakan-rakan rangkaian anda yang tahu anda akan pergi . Untuk RSVP ...

Cara Menghantar Mesej Peribadi di Ning - dummies

Cara Menghantar Mesej Peribadi di Ning - dummies

Mesej hanya dengan dua kumpulan orang: rakan anda dan Pentadbir (termasuk Pencipta Rangkaian). Mesej peribadi Ning memberi anda cara yang ideal sebagai ahli untuk berkomunikasi dengan ahli-ahli lain dalam rangkaian tanpa semua orang mengetahui tentangnya:

Pilihan Editor

Dimensi web untuk Infographics anda - dummies

Dimensi web untuk Infographics anda - dummies

Cabaran untuk menilai infographic untuk web adalah saiz reka bentuk kini sangat berubah , tiada standard untuk bercakap. "Reka bentuk responsif" yang dibawa dengan kemunculan HTML5 mengubah landskap reka bentuk web secara kekal. Tidak seperti grafik yang dicetak, di mana setiap orang yang melihatnya mengalaminya dalam saiz yang sama, ...

Pilihan Editor

Bagaimana Menganalisis Sentimen dan Kesan Penglibatan Media Sosial Anda - pemahaman

Bagaimana Menganalisis Sentimen dan Kesan Penglibatan Media Sosial Anda - pemahaman

Komuniti mempunyai tindak balas yang positif, negatif, atau neutral kepada anda dan jenama anda boleh membantu anda menentukan bagaimana untuk terus mengendalikan pendekatan penglibatan media sosial anda. Bagaimana anda mengukur pesaing dalam minda penonton dalam talian anda adalah satu lagi faktor penting untuk dinilai. Anda juga boleh memanfaatkan ...

Cara Tanya Ahli Komuniti Dalam Talian untuk Ulasan - dummies

Cara Tanya Ahli Komuniti Dalam Talian untuk Ulasan - dummies

Tidak ada yang salah dengan menjangkau para blogger, penulis, dan ahli komuniti dalam talian lain dan bertanya kepada mereka jika mereka berminat untuk menyemak jenama atau komuniti anda. Perbezaan antara penginjilan jenama dan melakukan kajian semula adalah bahawa penginjil jenama tidak mengkaji: Mereka mempromosikan, dan mereka diberi pampasan sebagai pertukaran untuk promosi mereka. Penilai, di ...

Cara Mengiklankan Syarikat Anda melalui Penajaan Blog - patung

Cara Mengiklankan Syarikat Anda melalui Penajaan Blog - patung

Untuk cara percikan untuk dilihat blog atau laman web, pertimbangkan menaja laman web ini. Penajaan untuk blog popular telah mendapat banyak perhatian dalam blogosphere. Sesetengah blogger menyeru menerima tajaan "menjual keluar," tetapi yang lain menganggapnya sebagai cara terbaik untuk mendapatkan bayaran untuk melakukan apa yang mereka suka. Penajaan cenderung kepada ...