SumberKiat dan trik, terutama dalam pemrograman, bisa sangat membantu. Sebuah shotcat, addon, atau hack kecil dapat menghemat banyak waktu dan secara dramatis meningkatkan produktivitas. Saya mengumpulkan yang favorit saya dan membuat artikel ini dari mereka. Beberapa tips di bawah ini sudah dikenal banyak orang, dan beberapa telah muncul baru-baru ini. Dengan satu atau lain cara, saya yakin mereka pasti tidak akan berlebihan ketika Anda sekali lagi memulai proyek analisis data.
1. Profiling Pandas Dataframe
Pembuatan profil membantu Anda lebih memahami data kami, dan paket Pendeteksian Pandas dibuat hanya untuk ini. Perpustakaan akan memberikan kesempatan untuk dengan mudah dan cepat melakukan analisis eksplorasi dari Bingkai Data Pandas. Biasanya dalam kasus seperti itu, fungsi df.describe () dan df.info () digunakan sebagai langkah pertama, tetapi mereka melaporkan sedikit dan tidak mengatasinya dengan baik dengan set data yang besar. Satu baris kode menggunakan Pandas Profiling , sebaliknya, akan menghasilkan banyak informasi dalam laporan HTML interaktif.
Inilah yang dihitung untuk dataset yang diberikan:
Output statistik oleh Pandas Profiling.Instalasi
pip install pandas-profiling conda install -c anaconda pandas-profiling
Gunakan
Mari kita gunakan Dataset Penumpang Titanic untuk menampilkan profiler.
# import pandas as pd import pandas_profiling
df = pd.read_csv('titanic/train.csv') pandas_profiling.ProfileReport(df)
Ini yang Anda butuhkan untuk menampilkan hasil profil. Laporan ini penuh dengan rincian, termasuk, jika perlu, grafik.
Laporan dapat diekspor ke file HTML interaktif :
profile = pandas_profiling.ProfileReport(df) profile.to_file(outputfile="Titanic data profiling.html")
Klik di sini untuk menonton langsung.
( folder dengan contoh - sekitar terjemahan.)
2. Membuat Pandas Graphics Interactive
Kelas DataFrame di Pandas memiliki fungsi .plot () bawaan . Namun, visualisasi yang dibuat dengan bantuannya tidak interaktif, yang ingin saya tingkatkan. Di sisi lain, saya juga tidak ingin mengabaikan kesederhanaan menggunakan fungsi. Bagaimana jika kita dapat membuat grafis Pandas interaktif tanpa benar-benar membuat perubahan pada kode? Inilah yang mungkin terjadi dengan perpustakaan Manset .
Kancing manset menghubungkan kekuatan plotly dengan fleksibilitas Pandas untuk grafik interaktif. Mari kita lihat bagaimana Anda dapat menginstal perpustakaan dan membuatnya bekerja dengan Panda .
Instalasi
pip install plotly # Plotly Cufflinks pip install cufflinks
Gunakan
# Pandas import pandas as pd # plotly cufflinks import cufflinks as cf
import plotly.offline cf.go_offline() cf.set_config_file(offline=False, world_readable=True)
Saatnya melihat semua kekuatan instrumen pada data pada penumpang Titanic.
df.iplot()
df.plot () dibandingkan dengan df.iplot ()Visualisasi bawah menunjukkan diagram statis, sedangkan diagram atas interaktif dan lebih rinci, semua tanpa perubahan sintaksis yang signifikan.
Di sini Anda dapat melihat lebih banyak contoh.
3. Sedikit keajaiban
Perintah ajaib adalah seperangkat fungsi yang mudah digunakan di laptop Jupyter yang dirancang untuk menyelesaikan tugas-tugas umum analisis data standar. Anda dapat melihat semua fitur yang tersedia dengan % lsmagic .
Daftar semua fungsi "ajaib" yang tersediaAda dua jenis perintah sihir: sihir baris , yang dimulai dengan % tunggal dan bekerja pada baris yang sama; dan sihir sel , yang dikaitkan dengan %% ganda dan bekerja pada beberapa baris.
Mari kita lihat hal-hal yang berguna dalam tugas analisis data umum:
% pastebin memuat kode ke Pastebin dan mengembalikan url. Pastebin adalah situs tempat kita dapat menyimpan teks biasa, misalnya, bagian dari kode sumber, untuk kemudian meneruskan tautannya kepada orang lain. Bahkan, GitHub Gist mirip dengan Pastebin, meskipun dengan kontrol versi.
Pertimbangkan skrip berikut:
# file.py def foo(x): return x
Menggunakan % pastebin dalam Notebook Jupyter akan membuat url di Pastebin.
Perintah % matplotlib inline digunakan untuk memvisualisasikan plot statis matplotlib di Notebook Jupyter. Ganti inline dengan notebook untuk mendapatkan bagan yang skalabel dan bisa berubah. Pastikan saja perintah itu ditambahkan sebelum mengimpor matplotlib .
% matplotlib inline dibandingkan dengan % matplotlib notebookPerintah % run menjalankan skrip di dalam Notebook Jupyter.
%run file.py
%% writefile menulis konten sel ke file. Kode di bawah ini akan ditulis ke file bernama foo.py dan disimpan di direktori saat ini.
Fungsi %% lateks menampilkan konten sel sebagai LaTeX. Ini berguna untuk menulis rumus dan persamaan matematika dalam sel.
4. Pemecahan masalah
Debugger interaktif juga merupakan tim ajaib, tapi saya memberikannya kategori saya sendiri. Jika pengecualian terjadi ketika memulai sel dengan kode, masukkan perintah % debug pada baris baru dan jalankan. Lingkungan debugging interaktif terbuka, menunjukkan lokasi di mana pengecualian terjadi. Anda dapat memeriksa nilai-nilai variabel dan melakukan berbagai operasi. Untuk keluar dari debugger, tekan q .
5. Kesimpulannya bisa indah
Jika Anda ingin struktur data Anda ditampilkan dengan indah, maka sidik jari adalah pilihan Anda. Ini sangat berguna saat mencetak kamus atau data JSON. Mari kita lihat kode yang menggunakan cetak dan cetak untuk output.
6. Menyoroti catatan
Kita dapat menggunakan peringatan di Notebook Jupyter kita untuk menyoroti sesuatu yang penting. Warnanya akan tergantung pada jenis peringatan. Cukup tambahkan salah satu atau semua kode berikut ke sel yang ingin Anda sorot.
- Peringatan biru: informasi
<div class="alert alert-block alert-info"> <b>Tip:</b> Use blue boxes (alert-info) for tips and notes. If it's a note, you don't have to include the word βNoteβ. </div>
- Peringatan kuning: Peringatan
<div class="alert alert-block alert-warning"> <b>Example:</b> Yellow Boxes are generally used to include additional examples or mathematical formulas. </div>
<div class="alert alert-block alert-success"> Use green box only when necessary like to display links to related content. </div>
<div class="alert alert-block alert-danger"> It is good to avoid red boxes but can be used to alert users to not delete some important part of code etc. </div>
7. Cetak setiap output dalam sel
Pertimbangkan sel Notebook Jupyter yang berisi kode ini:
In [1]: 10+5 11+6
Out [1]: 17
Ini adalah properti normal sel yang hanya keluaran terakhir yang dicetak, dan untuk yang lain kita perlu menambahkan fungsi print () . Nah, ternyata kita bisa mencetak semua kesimpulan dengan menambahkan fragmen berikut dari atas:
from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all"
Sekarang semua kesimpulan dicetak satu demi satu.
In [1]: 10+5 11+6 12+7
Out [1]: 15 Out [1]: 17 Out [1]: 19
Untuk kembali ke pengaturan awal:
InteractiveShell.ast_node_interactivity = "last_expr"
8. Menjalankan skrip Python dengan opsi -i.
Cara khas untuk menjalankan skrip Python dari baris perintah adalah: python hello.py . Namun, jika Anda menambahkan parameter - i, mis. panggil python -i hello.py Anda akan mendapat lebih banyak. Mari kita lihat apa sebenarnya.
- Pertama, setelah akhir program tercapai, Python tidak lagi keluar dari juru bahasa. Dengan demikian, kita dapat memeriksa nilai-nilai variabel dan kebenaran fungsi yang didefinisikan dalam program kami.
- Kedua, karena kita masih berada di interpreter, kita dapat dengan mudah memanggil debugger python:
import pdb pdb.pm()
Ini akan membawa kita ke tempat di mana pengecualian terjadi, dan kita dapat terus bekerja pada kode.
Sumber asli fitur.
9. Mengomentari kode (ras) secara otomatis
Ctrl / Cmd + / secara otomatis mengomentari baris yang dipilih dalam sel. Menekan kombinasi lagi akan menghilangkan tanda komentar pada baris yang sama.
(Omong-omong, ini berlaku untuk editor lain seperti Pycharm atau Sublime Text - approx. Transl.)
10. Pembatalan tindakan acak
Pernahkah Anda secara tidak sengaja menghapus sel Notebook Jupyter? Jika demikian, inilah shotcats yang akan membatalkan tindakan ini.
- Jika Anda menghapus konten di dalam sel, Anda dapat dengan mudah mengembalikannya dengan menekan CTRL / CMD + Z
- Jika Anda perlu mengembalikan sendiri sel yang dihapus - ESC + Z atau EDIT> Undo Delete Cells
Kesimpulan
Pada artikel ini, saya telah membuat daftar tips dasar yang membantu saya ketika bekerja dengan Notebook Python dan Jupyter. Saya harap mereka juga membantu Anda. Selamat coding!