Hướng dẫn python tools for data analysis - công cụ python để phân tích dữ liệu

Python thực hành

Scipy, Numba, Cython, Dask, Vaex và Intel SDC đều có các phiên bản mới hỗ trợ các dự án phân tích dữ liệu lớn và các dự án học máy.

Nhà văn cao cấp, Infoworld |InfoWorld |

Hướng dẫn python tools for data analysis - công cụ python để phân tích dữ liệu
ThinkStock

Mục lục

Cho xem nhiều hơn

Nếu bạn muốn làm chủ, hoặc thậm chí chỉ sử dụng, phân tích dữ liệu, Python là nơi để làm điều đó. Python rất dễ học, nó có sự hỗ trợ rộng lớn và sâu sắc, và hầu hết mọi thư viện khoa học dữ liệu và khung học máy ngoài kia đều có giao diện Python.

Trong vài tháng qua, một số dự án khoa học dữ liệu cho Python đã phát hành các phiên bản mới với các bản cập nhật tính năng chính. Một số là về việc crunching số thực tế; Những người khác giúp Pythonistas dễ dàng viết mã nhanh được tối ưu hóa cho các công việc đó.

Khoa học dữ liệu Python cần thiết: Scipy 1.7

Người dùng Python muốn có một thư viện toán học nhanh và mạnh mẽ có thể sử dụng Numpy, nhưng bản thân Numpy không tập trung vào nhiệm vụ. Scipy sử dụng Numpy để cung cấp các thư viện cho các nhiệm vụ lập trình theo định hướng toán học và khoa học chung, từ đại số tuyến tính đến công việc thống kê đến xử lý tín hiệu.

SCIPY giúp khoa học dữ liệu như thế nào

SCIPY từ lâu đã hữu ích cho việc cung cấp các công cụ thuận tiện và được sử dụng rộng rãi để làm việc với toán học và thống kê. Nhưng trong thời gian dài nhất, nó đã không có bản phát hành 1.0 thích hợp, mặc dù nó có khả năng tương thích ngược mạnh mẽ trên các phiên bản.

Kích hoạt đưa dự án SCIPY đến phiên bản 1.0, theo nhà phát triển Core & NBSP; Ralf Gommers, chủ yếu là một sự hợp nhất về cách dự án được quản lý và quản lý. Nhưng nó cũng bao gồm một quy trình để tích hợp liên tục cho các bản dựng MacOS và Windows, cũng như hỗ trợ thích hợp cho các nhị phân Windows được xây dựng sẵn. Tính năng cuối cùng này có nghĩa là người dùng Windows hiện có thể sử dụng SCIPY mà không cần phải nhảy qua các vòng bổ sung.

Kể từ khi phát hành Scipy 1.0 vào năm 2017, dự án đã cung cấp bảy bản phát hành điểm chính, với nhiều cải tiến trên đường đi:

  • Việc hỗ trợ hỗ trợ Python 2.7 và hiện đại hóa tiếp theo của cơ sở mã.
  • Các cải tiến và cập nhật liên tục cho các mô hình con của SCIPY, với nhiều chức năng hơn, tài liệu tốt hơn và nhiều thuật toán mới - ví dụ, một mô -đun biến đổi Fourier nhanh mới & NBSP mới với hiệu suất tốt hơn và giao diện hiện đại hóa.
  • Hỗ trợ tốt hơn cho các chức năng trong Lapack, gói Fortran để giải các vấn đề phương trình tuyến tính chung.
  • Better & NBSP; Khả năng tương thích với Pypy thời gian chạy Python thay thế, bao gồm trình biên dịch JIT cho mã chạy dài hơn.

Tải xuống Scipy ở đâu

Các nhị phân Scipy có thể được tải xuống từ Chỉ số Gói Python hoặc bằng cách nhập pip install scipy. Mã nguồn có sẵn trên GitHub.

Khoa học dữ liệu Python cần thiết: & NBSP; NUMBA 0.53.0

Numba cho phép các hàm hoặc mô -đun Python được biên dịch thành ngôn ngữ lắp ráp & nbsp; thông qua khung trình biên dịch LLVM. Bạn có thể làm điều này một cách nhanh chóng, bất cứ khi nào một chương trình Python chạy, hoặc trước thời hạn. Theo nghĩa đó, Numba giống như Cython, nhưng Numba thường thuận tiện hơn để làm việc, & nbsp; mặc dù mã được tăng tốc với Cython dễ dàng phân phối cho bên thứ ba.

Làm thế nào tê liệt giúp với khoa học dữ liệu

Cách rõ ràng nhất Numba giúp các nhà khoa học dữ liệu là bằng cách tăng tốc các hoạt động được viết bằng Python. Bạn có thể nguyên mẫu các dự án trong Python thuần túy, sau đó chú thích chúng bằng numba đủ nhanh để sử dụng sản xuất.

Numba cũng có thể cung cấp các tốc độ chạy nhanh hơn trên phần cứng được xây dựng cho các ứng dụng khoa học và học máy. Các phiên bản trước đó của Numba được hỗ trợ biên dịch với mã tăng tốc CUDA, nhưng các phiên bản gần đây nhất có thuật toán giảm mã GPU mới, hiệu quả xa để biên dịch nhanh hơn, cũng như hỗ trợ cho cả API NVIDIA CUDA và AMD ROCM.

Numba cũng có thể tối ưu hóa các hàm tổng hợp JIT để thực hiện song song trên các lõi CPU bất cứ khi nào có thể, mặc dù mã của bạn sẽ cần thêm một chút cú pháp để thực hiện đúng.

Tải xuống Numba ở đâu

Numba có sẵn trên Chỉ số gói Python và nó có thể được cài đặt bằng cách nhập pip install numba từ dòng lệnh. Các nhị phân được xây dựng sẵn có sẵn cho Windows, MacOS và Linux chung. & NBSP; Mã nguồn có sẵn trên GitHub.

Khoa học dữ liệu Python cần thiết: & NBSP; Cython 3.0 (Beta)

Cython chuyển đổi mã Python thành mã C có thể chạy các đơn đặt hàng nhanh hơn. Sự chuyển đổi này có ích nhất với mã nặng về toán học hoặc mã chạy theo các vòng lặp chặt chẽ, cả hai đều phổ biến trong các chương trình Python được viết cho kỹ thuật, khoa học và học máy.

Cython giúp khoa học dữ liệu như thế nào

Mã Cython về cơ bản là mã Python, với một số cú pháp bổ sung. Mã Python có thể được biên dịch thành C với Cython, nhưng những cải tiến hiệu suất tốt nhất theo thứ tự hàng chục đến hàng trăm lần nhanh hơn khi sử dụng Cython, & NBSP; Chú thích loại.

Trước khi Cython 3 xuất hiện, Cython đã thể hiện sơ đồ đánh số phiên bản 0.xx. Với Cython 3, ngôn ngữ đã giảm hỗ trợ cho cú pháp Python 2. Mặc dù Cython 3 vẫn đang ở trong phiên bản beta, nhưng những người bảo trì Cython, khuyến khích mọi người sử dụng nó thay cho các phiên bản trước đó. Cython 3 cũng nhấn mạnh việc sử dụng nhiều hơn chế độ Python Python Pure, trong đó nhiều chức năng (mặc dù không phải tất cả) có thể được cung cấp bằng cách sử dụng cú pháp tương thích với Python 100%.

Cython cũng hỗ trợ tích hợp với & NBSP; IPYTHON/JUPYTER Notebooks. Mã được biên dịch Cython có thể được sử dụng trong các máy tính xách tay Jupyter thông qua các chú thích nội tuyến, như thể mã Cython là bất kỳ mã Python nào khác.

Bạn cũng có thể biên dịch các mô-đun Cython cho Jupyter với tối ưu hóa hướng dẫn hồ sơ được bật. Các mô -đun được xây dựng với tùy chọn này được biên dịch và tối ưu hóa dựa trên thông tin định hình được tạo cho chúng, để chúng chạy nhanh hơn. Lưu ý rằng tùy chọn này chỉ có sẵn cho Cython khi được sử dụng với trình biên dịch GCC; Hỗ trợ MSVC vẫn chưa có.

Nơi để lấy cython

Cython có sẵn trên Chỉ số gói & nbsp; Python và nó có thể được cài đặt với & nbsp; ________ 3 & nbsp; từ dòng lệnh. Các phiên bản nhị phân cho các cửa sổ 32 bit và 64 bit, Linux chung và macOS được bao gồm. Mã nguồn là trên GitHub. Lưu ý rằng trình biên dịch C phải có mặt trên nền tảng của bạn để sử dụng Cython.

Khoa học dữ liệu Python cần thiết: & NBSP; DASK 2021.07.0

Sức mạnh xử lý rẻ hơn bao giờ hết, nhưng có thể khó khăn để tận dụng nó theo cách mạnh mẽ nhất bằng cách phá vỡ các tác vụ trên nhiều lõi CPU, bộ xử lý vật lý hoặc các nút tính toán.

Dask có một công việc Python và lên lịch hiệu quả trên nhiều hệ thống. Và bởi vì cú pháp được sử dụng để khởi chạy các công việc của DASK gần giống như cú pháp được sử dụng để làm những việc khác trong Python, việc tận dụng DASK đòi hỏi rất ít việc làm lại mã hiện có.

Làm thế nào DASK giúp Khoa học dữ liệu

Dask cung cấp các phiên bản riêng của một số giao diện cho nhiều thư viện học máy phổ biến và tính toán khoa học trong Python. Đối tượng DataFrame của nó giống như trong thư viện Pandas; Tương tự như vậy, đối tượng mảng của nó hoạt động giống như Numpy. Do đó, DASK cho phép bạn nhanh chóng song song với mã hiện có bằng cách chỉ thay đổi một vài dòng mã.

Dask cũng có thể được sử dụng để song song hóa các công việc được viết bằng Python thuần túy và nó có các loại đối tượng (như & NBSP; túi) phù hợp để tối ưu hóa các hoạt động như map, filtergroupby trên các bộ sưu tập các đối tượng Python chung.

Tải xuống dask ở đâu

DASK có sẵn trên Chỉ số Gói Python và có thể được cài đặt thông qua & NBSP; ________ 7. Nó cũng có sẵn thông qua phân phối Python Anaconda, bằng cách gõ conda install dask. Mã nguồn có sẵn trên GitHub.

Khoa học dữ liệu Python cần thiết: Vaex 4.30 & NBSP;

VAEX cho phép người dùng thực hiện các hoạt động lười biếng trên các bộ dữ liệu bảng lớn về cơ bản, các khung dữ liệu theo Numpy hoặc Pandas. Trong trường hợp này, trong trường hợp này có nghĩa là hàng tỷ hàng, với tất cả các hoạt động được thực hiện hiệu quả nhất có thể, với việc sao chép dữ liệu bằng không, sử dụng bộ nhớ tối thiểu và các công cụ trực quan hóa BURALT-IN.

VAEX giúp khoa học dữ liệu như thế nào

Làm việc với các bộ dữ liệu lớn trong Python thường bao gồm rất nhiều bộ nhớ lãng phí hoặc sức mạnh xử lý, đặc biệt nếu công việc chỉ liên quan đến một tập hợp con của dữ liệu, ví dụ, một cột từ một bảng. VAEX thực hiện các tính toán theo yêu cầu, khi họ thực sự cần thiết, sử dụng tốt nhất các tài nguyên điện toán có sẵn.

Tải xuống Vaex ở đâu

VAEX có sẵn trên Chỉ số gói Python và có thể được cài đặt với pip install vaex từ dòng lệnh. Lưu ý rằng để có kết quả tốt nhất, nó khuyến nghị bạn nên cài đặt Vaex trong môi trường ảo hoặc bạn sử dụng phân phối Python Anaconda.

Khoa học dữ liệu Python cần thiết: Intel SDC

Trình biên dịch DataFrame có thể mở rộng Intel (SDC), trước đây là bộ công cụ phân tích hiệu suất cao, là một dự án thử nghiệm để tăng tốc phân tích dữ liệu và học máy trên các cụm. Nó biên dịch một tập hợp con của Python với mã là & nbsp; tự động song song trên các cụm bằng cách sử dụng tiện ích ____ 10 & nbsp; từ dự án MPI mở.

Làm thế nào Intel SDC giúp Khoa học dữ liệu

HPAT sử dụng Numba, nhưng không giống như dự án đó và Cython, IT & nbsp; không biên dịch Python như hiện tại. Thay vào đó, nó có một tập hợp con bị hạn chế của ngôn ngữ Python, một cách nghiêm túc, các mảng vô âm và các dữ liệu gấu trúc và tối ưu hóa chúng để chạy qua nhiều nút.

Giống như NUMBA, HPAT có & nbsp; ________ 11 Nhà trang trí có thể biến các chức năng cụ thể thành các đối tác được tối ưu hóa của họ. Nó cũng bao gồm một mô -đun I/O gốc để đọc và ghi vào các tệp HDF5 (không phải HDFS).

Tải xuống Intel SDC ở đâu

SDC chỉ có sẵn & nbsp; ở định dạng nguồn tại GitHub. Nhị phân không được cung cấp.

Serdar Yegulalp là một nhà văn cao cấp tại Infoworld, tập trung vào học máy, container hóa, devops, hệ sinh thái Python và đánh giá định kỳ.

Bản quyền © 2021 IDG Communications, Inc.

Python được sử dụng như thế nào để phân tích dữ liệu?

Một trong những cách sử dụng phổ biến nhất cho Python là khả năng tạo và quản lý các cấu trúc dữ liệu một cách nhanh chóng - ví dụ, Pandas cung cấp rất nhiều công cụ để thao tác, phân tích và thậm chí đại diện cho các cấu trúc dữ liệu và bộ dữ liệu phức tạp.its ability to create and manage data structures quickly — Pandas, for instance, offers a plethora of tools to manipulate, analyze, and even represent data structures and complex datasets.

Python có phải là một công cụ phân tích?

R và Python đều là các công cụ phân tích dữ liệu cần được lập trình.Sự khác biệt là R được sử dụng độc quyền trong lĩnh vực phân tích dữ liệu, trong khi điện toán khoa học và phân tích dữ liệu chỉ là một nhánh ứng dụng của Python. that need to be programmed. The difference is that R is used exclusively in the field of data analysis, while scientific computing and data analysis are just an application branch of Python.