Seorang kolega dan saya telah melakukan beberapa studi pendahuluan tentang perbedaan kinerja antara panda dan tabel data. Anda dapat menemukan studi (yang dibagi menjadi dua bagian) di Blog kami (Anda dapat menemukan bagian dua di sini ).
Kami menduga bahwa ada beberapa tugas di mana panda jelas mengungguli data.table, tetapi juga kasus di mana data.tabel jauh lebih cepat. Anda dapat memeriksanya sendiri dan beri tahu kami pendapat Anda tentang hasilnya.
EDIT:
Jika Anda tidak ingin membaca blog secara detail, berikut ini ringkasan singkat dari pengaturan kami dan temuan kami:
Mempersiapkan
Kami membandingkan pandas
dan data.table
pada 12 set data simulasi yang berbeda pada operasi berikut (sejauh ini), yang kami sebut skenario.
- Pengambilan data dengan operasi seperti-pilih
- Pemfilteran data dengan operasi pilih bersyarat
- Operasi pengurutan data
- Operasi agregasi data
Perhitungan dilakukan pada mesin dengan Intel i7 2.2GHz dengan 4 core fisik, RAM 16GB dan hard drive SSD. Versi perangkat lunak adalah OS X 10.13.3, Python 3.6.4 dan R 3.4.2. Versi pustaka masing-masing yang digunakan adalah 0,22 untuk panda dan 1,10.4-3 untuk data.table
Singkatnya
data.table
tampaknya lebih cepat ketika memilih kolom ( pandas
rata-rata membutuhkan waktu 50% lebih banyak)
pandas
lebih cepat dalam memfilter baris (rata-rata sekitar 50%)
data.table
tampaknya jauh lebih cepat dalam menyortir ( pandas
kadang-kadang 100 kali lebih lambat)
- menambahkan kolom baru akan muncul lebih cepat dengan
pandas
- hasil agregat tercampur total
Harap dicatat bahwa saya berusaha menyederhanakan hasil sebanyak mungkin untuk tidak membuat Anda bosan sampai mati. Untuk visualisasi yang lebih lengkap baca studi. Jika Anda tidak dapat mengakses halaman web kami, silakan kirim saya pesan dan saya akan meneruskan konten Anda kepada Anda. Anda dapat menemukan kode untuk studi lengkap tentang GitHub . Jika Anda memiliki ide bagaimana meningkatkan studi kami, silakan kirim email kepada kami. Anda dapat menemukan kontak kami di GitHub.