Hướng dẫn how to use r in python - cách sử dụng r trong python

Khoa học dữ liệu rất khác so với lập trình. Chúng tôi chỉ sử dụng bốn ngôn ngữ - R, Python, Julia và SQL. Bây giờ, SQL là không thể thương lượng, vì mọi nhà khoa học dữ liệu phải thành thạo trong đó. Julia vẫn là đứa trẻ mới trong khối. Nhiều người tranh luận cái nào tốt hơn - Python hay R? Nhưng hôm nay, chúng tôi hỏi một câu hỏi khác - làm thế nào bạn có thể sử dụng R và Python cùng nhau?

Lúc đầu có vẻ điên rồ, nhưng nghe chúng tôi. Cả Python và R đều là ngôn ngữ ổn định được sử dụng bởi nhiều nhà khoa học dữ liệu. Ngay cả các nhà phát triển gói dày dạn, chẳng hạn như Hadley Wickham, mượn từ BeauftifulSoup [Python] để thực hiện các gói cào web Rvest [r]. Phát minh lại bánh xe không có ý nghĩa.

Hôm nay chúng tôi sẽ khám phá một vài tùy chọn bạn có nếu bạn muốn sử dụng R và Python cùng nhau trong cùng một dự án. Hãy bắt đầu với các tùy chọn cho người dùng Python.

Mục lục:

  • Gọi các kịch bản R từ Python
  • Chạy mã R từ Python với RPY2
  • Gọi các kịch bản python từ r
  • Chạy mã Python từ R với R Markdown
  • Sự kết luận

Cách gọi các kịch bản R từ Python

Sử dụng R và Python cùng một lúc là cực kỳ dễ dàng nếu bạn đã chuẩn bị các tập lệnh R của mình. Gọi họ từ Python sôi sục xuống một dòng mã duy nhất. Hãy cùng bao gồm các kịch bản R trước khi lặn xa hơn.

Nó thực sự là một đơn giản, vì nó chỉ in một số văn bản giả vào bảng điều khiển:

Ở đầu Python, bạn sẽ cần sử dụng mô -đun subprocess để chạy lệnh shell. Tất cả các tập lệnh R có thể được chạy với cuộc gọi Rscript :

Dưới đây bạn sẽ thấy đầu ra:

Hình 1 - Chạy tập lệnh R từ Python

Dòng được in thành công vào bảng điều khiển và số 0 đã được trả lại. Đó là điều - cách tiếp cận này là tuyệt vời nếu tập lệnh R của bạn thực hiện các nhiệm vụ hết lần này đến lần khác. Nó bị thiếu nếu bạn muốn sử dụng đầu ra từ mã R trong Python.

Đó là một thiếu sót rằng tùy chọn tiếp theo để sử dụng R và Python cùng địa chỉ.

Cách chạy mã R từ Python với RPY2

Bây giờ chúng tôi sẽ đi sâu vào những thứ tốt. Bạn phải cài đặt gói rpy2 trong Python để theo dõi. Nó giả định rằng bạn cũng đã cài đặt và cấu hình.

Để bắt đầu, chúng tôi sẽ sử dụng mô hình con robjects để truy cập các đối tượng R, chẳng hạn như số PI:

Ở đây, những gì mà người được lưu trữ trong biến:

Hình 2 - Đối tượng Pi R

Bạn có thể kiểm tra loại của nó. Nó có một vectơ nổi đặc trưng R:

Hình ảnh 3 - Loại đối tượng R Pi

Có rất nhiều bạn có thể làm hơn là truy cập các đối tượng R riêng lẻ. Ví dụ: bạn cũng có thể khai báo và chạy các chức năng R. Đoạn mã bên dưới chỉ cho bạn cách khai báo một hàm để thêm số và gọi nó hai lần. Chỉ cần cẩn thận hơn, hãy đảm bảo bao quanh mã R với dấu ngoặc kép ba:

Ở đây, đầu ra từ đoạn mã trên:

Hình 4 - Chức năng gọi R trong Python

Nhiều lần bạn đã thắng được tìm các gói R tích hợp đủ cho trường hợp sử dụng cụ thể của bạn. Bạn có thể cài đặt các gói R bổ sung, bên ngoài thông qua Python với mô hình con rpackages:

DataFrames

Ngoài ra, còn có một tùy chọn để làm việc với R DataFrames trong Python. Đoạn mã bên dưới chỉ cho bạn cách nhập SubPackage datasets và truy cập bộ dữ liệu MTCARS nổi tiếng:

Tại đây, bộ dữ liệu trông như thế nào khi được hiển thị trong Python:

Hình ảnh 5 - Bộ dữ liệu MTCARS dưới dạng khung dữ liệu

Hình dung

Và đối với bit cuối cùng, chúng tôi sẽ chỉ cho bạn cách trực quan hóa bộ dữ liệu với gói Riên ggplot2. Đến bây giờ, bạn có thể hiển thị các số liệu trực tiếp trong sổ ghi chép, vì vậy bạn sẽ cần lưu hình vào một tệp bằng gói grDevices. Mã chịu trách nhiệm vẽ sơ đồ sẽ đi giữa cuộc gọi đến ____10 và Rvest1, vì vậy hãy ghi nhớ điều đó để tham khảo trong tương lai:

Hình ảnh 6 - Sử dụng GGPLOT2 trong Python

Và đó là cách mà bạn có thể sử dụng R và Python cùng một lúc bằng cách chạy mã R từ Python. Hãy để đảo ngược vai trò tiếp theo và khám phá các tùy chọn cho người dùng R.

Tìm kiếm để tạo kiểu cho các lô phân tán của bạn? Đọc hướng dẫn toàn diện của chúng tôi để các sơ đồ phân tán tuyệt đẹp với R và GGPLOT2.

Cách gọi các tập lệnh Python từ r

Người dùng R có thời gian chạy các tập lệnh thậm chí dễ dàng hơn từ ngôn ngữ lập trình đối diện. Bạn sẽ phải cài đặt gói Rvest2 nếu bạn muốn theo dõi, vì nó chịu trách nhiệm chạy các tập lệnh Python và định cấu hình môi trường Python.

Trước tiên, hãy để viết một kịch bản Python. Nó sẽ là một đơn giản, vì nó in một dòng duy nhất vào bảng điều khiển:

Trong R, bạn sẽ phải nhập gói Rvest2 và gọi hàm Rvest4 với đường dẫn đến tập lệnh Python được cung cấp:

Ở đây, đầu ra được hiển thị trong bảng điều khiển R:

Hình 7 - Chạy các tập lệnh Python từ R

Như bạn có thể thấy, mọi thứ hoạt động như quảng cáo. Bạn có thể tiến thêm một bước và sử dụng phiên bản Python cụ thể, môi trường ảo hoặc môi trường Anaconda. Sử dụng bất kỳ trong ba cuộc gọi chức năng bên dưới làm tài liệu tham khảo:

Tiếp theo, chúng tôi sẽ khám phá những cách nâng cao hơn người dùng R có thể sử dụng R và Python cùng một lúc.

Các lập trình viên R có thể tạo ra các mô hình học máy không? Đúng! Tìm hiểu làm thế nào với Fast.ai trong R. & NBSP;

Cách chạy mã python từ r

Gói Rvest2 đi kèm với động cơ Python bạn có thể sử dụng trong R Markdown. Reticulation cho phép bạn chạy các đoạn mã Python, in đầu ra Python, truy cập các đối tượng Python, v.v.

Để bắt đầu, hãy tạo tệp R Markdown [RMD] mới và thực hiện thiết lập thông thường - Nhập thư viện và cấu hình vị trí Python:

Bây giờ bạn có thể tạo một khối R hoặc một khối python bằng cách viết ba backticks và chỉ định ngôn ngữ bên trong dấu ngoặc xoăn. Chúng tôi sẽ bắt đầu với Python. Đoạn mã bên dưới nhập thư viện Numpy, khai báo một mảng và in nó:

Hình ảnh 8 - Danh sách Python được in bằng R Markdown

Nhưng điều gì sẽ xảy ra nếu bạn muốn chuyển đổi mảng Python sườn numpy thành một vectơ r? Hóa ra, bạn có thể truy cập các đối tượng Python trong r bằng cách tiền tố tên biến với Rvest6. Đây là một ví dụ:

Hình 9 - Mảng Numpy được chuyển đổi thành V Vector

Như bạn tưởng tượng, các khả năng từ đây là vô tận. Bây giờ chúng tôi sẽ chỉ cho bạn cách nhập thư viện Pandas, tải trong bộ dữ liệu từ GitHub và in năm hàng đầu tiên của nó:

Hình ảnh 10 - Trưởng bộ dữ liệu MTCARS

Dễ dàng, phải không? Bạn có thể nhập bất kỳ thư viện Python nào và viết bất kỳ mã Python nào bạn muốn, sau đó truy cập các biến và hàm được khai báo với R.

Thư viện trực quan hóa dữ liệu tiêu chuẩn Python DE-FACTO là matplotlib, và nó cũng dễ sử dụng trong R Markdown. Chỉ cần nhớ gọi phương thức Rvest7, vì con số won đã được hiển thị nếu không:

Hình 11 - Biểu đồ Matplotlib trong R Markdown

Và đó là cách mà bạn có thể chạy mã Python trong R và R Markdown. Đó là tất cả những gì chúng tôi muốn trình bày trong bài viết hôm nay, vì vậy, hãy để một bản tóm tắt ngắn gọn tiếp theo.

Tóm tắt sử dụng R và Python cùng nhau

Hôm nay, bạn đã học được cách sử dụng R và Python cùng nhau từ quan điểm của cả người dùng R và Python. Hy vọng, bây giờ bạn có thể kết hợp hai ngôn ngữ để có được những điều tốt nhất của cả hai thế giới. Ví dụ: một số gói R, chẳng hạn như Rvest8 không có đối thủ cạnh tranh trực tiếp trong Python. Tái tạo bánh xe không có ý nghĩa. Vì vậy, don. Chỉ cần xử lý dữ liệu với Python và mô hình hóa nó bằng R.

Tại sao bạn không cho nó thử như một bài tập về nhà? Tải xuống bộ dữ liệu hành khách của hãng hàng không, tải và xử lý trước trong Python và gói Riên Rvest8 để đưa ra dự báo. Chia sẻ kết quả của bạn với chúng tôi trên Twitter - @appsilon. Chúng tôi rất thích xem những gì bạn nghĩ ra.

Bạn muốn bẻ khóa cuộc phỏng vấn mã hóa khoa học dữ liệu và Python sắp tới của bạn? Dưới đây là 7 câu hỏi hàng đầu bạn phải biết cách trả lời.

Bài viết Làm thế nào để sử dụng R và Python cùng nhau? Hãy thử 2 gói này đến từ ứng dụng | Bảng điều khiển Shiny doanh nghiệp r.

Tôi có thể viết R trong Python không?

Dễ dàng, phải không? Bạn có thể nhập bất kỳ thư viện Python nào và viết bất kỳ mã Python nào bạn muốn, sau đó truy cập các biến và chức năng được khai báo với R. và đó là cách bạn có thể chạy mã Python trong R và R Markdown.You can import any Python library and write any Python code you want, and then access the variables and functions declared with R. And that's how you can run Python code in R and R Markdown.

\ R làm gì trong Python?

Trong các chuỗi Python, dấu gạch chéo ngược "\" là một nhân vật đặc biệt, còn được gọi là nhân vật "Escape".Nó được sử dụng để thể hiện các ký tự khoảng trắng nhất định: "\ t" là một tab, "\ n" là một dòng mới và "\ r" là một sự trở lại vận chuyển.Ngược lại, tiền tố một ký tự đặc biệt với "\" biến nó thành một ký tự thông thường.carriage return. Conversely, prefixing a special character with "\" turns it into an ordinary character.

Tôi có thể sử dụng thư viện R trong Python không?

Tải xuống và cài đặt các gói R thường được thực hiện bằng cách tìm nạp các gói R từ kho lưu trữ gói và cài đặt chúng cục bộ.Các khả năng để làm điều này được cung cấp bởi các thư viện R và khi ở Python, chúng ta có thể chỉ cần sử dụng chúng bằng RPY2.Một giao diện cho các tính năng R được cung cấp trong RPY2.when in Python we can simply use them using rpy2. An interface to the R features is provided in rpy2.

Tôi có thể sử dụng cả R và Python không?

Nhà khoa học dữ liệu với các sản phẩm rstudio Bạn có thể kết hợp R và Python một cách liền mạch mà không cần thêm chi phí.Bạn có thể sử dụng Rstudio IDE cho R, nhưng cũng cho các nhiệm vụ song ngữ.Với RSTUDIO Workbench, khởi động Jupyter Notebooks, Jupyterlab hoặc mã vs cho Python.With RStudio products you can combine R and Python seamlessly without extra overhead. You can use the RStudio IDE for R, but also for bilingual tasks. With RStudio Workbench, launch Jupyter Notebooks, JupyterLab, or VS Code for Python.

Bài Viết Liên Quan

Chủ Đề