Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

R có xu hướng tốt hơn:

  • Các phương pháp thống kê cập nhật, đặc biệt đối với các ứng dụng thích hợp, bởi vì các nhà thống kê hoạt động trong r

  • Nhiều, thư viện trực quan tốt hơn nhiều. Trong Python, bạn phải phát triển các hình ảnh trực quan phức tạp từ đầu, trong khi điều này là tầm thường trong r

  • Việc thực hiện xử lý song song dễ dàng hơn nhiều trong R so với Python

  • Toàn bộ cấu trúc của R được định hướng trên việc làm việc trên các bộ dữ liệu và vectơ. Lapply và Tapply có thể khó khăn để grok, nhưng một khi bạn làm, họ sẽ rất nhanh.

Mặt khác, R là một ngôn ngữ lập trình được phát triển bởi các nhà thống kê, không phải lập trình viên. Cú pháp và quy ước là chết tiệt tàn bạo. Các thư viện như Tidyr và dplyr thực sự giúp làm sạch mã của bạn, nhưng đôi khi không có cách nào xung quanh cú pháp cơ sở. Điều này làm cho việc học hỏi và khó khăn hơn để xem xét mã cũ của bạn - và rất dễ dàng để chọn những thói quen và phím tắt khủng khiếp trong quá trình này.

Điều đó nói rằng, các hoạt động khôn ngoan giữa các vectơ và như vậy làm cho dữ liệu xử lý trở nên dễ dàng so với Python cơ sở. Pandas thực sự chỉ là một sự hỗ trợ của các khung dữ liệu R, và Matplotlib là một bản sao kém hơn của GGPLOT.

R cũng là một ngôn ngữ chức năng mạnh mẽ và việc triển khai các đối tượng S3 khá kỳ quái và bí truyền, do đó, nó không dễ dàng hoặc trực quan để thực hiện các phong cách lập trình OOP.

Nói tóm lại: Các nhà phân tích dữ liệu và thống kê yêu thích R. Lập trình viên ghét r - và nếu bạn học R là ngôn ngữ lập trình đầu tiên của bạn, đó sẽ là một vấn đề tàn bạo khi bạn tìm hiểu tất cả các thói quen sai.

R và Python là hai trong số các ngôn ngữ khoa học dữ liệu phổ biến nhất, nhưng ngôn ngữ nào tốt hơn? Và Python sẽ thay thế R trong tương lai gần? Hãy cùng tìm hiểu!

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

R so với Python: Những điều cơ bản

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

Đầu tiên, một số lịch sử.

R lần đầu tiên xuất hiện vào năm 1990; Nó có nguồn gốc từ ngôn ngữ S, một ngôn ngữ lập trình thống kê được phát triển cho các nhà thống kê. Đó là (và vẫn là) thường được sử dụng trong các môi trường giáo dục và là một yêu thích trong số các nhà sinh học sinh học.

Vào cuối ngày, r vượt trội ở một điều và một điều duy nhất: thống kê. Nói tóm lại, R không hỗ trợ phạm vi hoạt động rộng hơn mà Python làm. Tuy nhiên, một số nhà khoa học dữ liệu vẫn chọn R trong công việc của họ.

Python, giống như R, cũng được phát hành vào những năm 1990, nhưng triết lý cốt lõi của ngôn ngữ rộng hơn nhiều so với chỉ số liệu thống kê. Không giống như R, Python là ngôn ngữ lập trình đa năng, vì vậy nó cũng có thể được sử dụng để phát triển phần mềm và lập trình nhúng.

Động lực chính cho Python là tạo ra một ngôn ngữ cốt lõi nhỏ với một thư viện tiêu chuẩn lớn và một thông dịch viên dễ mở rộng. Về cốt lõi, Python là một ngôn ngữ cấp cao, tóm tắt nhiều chi tiết lập trình không cần thiết để giúp các lập trình viên dễ dàng sử dụng và hiểu cú pháp của nó dễ dàng hơn.

Ngày nay, cả R và Python đều có các cộng đồng lớn, hữu ích với nhiều thư viện và gói nguồn mở; Họ cũng được các nhà khoa học dữ liệu ngưỡng mộ. Vậy cái nào tốt hơn? Và bạn nên chọn cái nào để bắt đầu hành trình khoa học dữ liệu của mình?

Tại sao không học cả hai?

Cá nhân, tôi là một lập trình viên R lâu năm. Lần đầu tiên tôi chọn R trên một trong những công việc đầu tiên của tôi; Đó chỉ là một trong nhiều ngôn ngữ nguồn mở vào thời điểm đó. Trước đó, bộ phận của tôi đã sử dụng các sản phẩm thương mại như SAS và DB2, và tôi là một fan hâm mộ lớn của SAS, vì vậy tôi tò mò muốn học một cái gì đó mới. R Lập trình đã trở thành điều của tôi, một thứ gì đó mà tôi đã thực hành bên ngoài công việc trong thời gian rảnh rỗi.

Sau đó, điều này đã được chứng minh là một quyết định tuyệt vời bởi vì kiến ​​thức lập trình mới mà tôi có được đã mang lại cho tôi cơ hội việc làm mới và cung cấp ngắn gọn, tôi trở nên cạnh tranh hơn trên thị trường. Và để làm cho mọi thứ trở nên tốt hơn, cuối cùng chúng tôi đã bắt đầu sử dụng R tại công ty của tôi, vì vậy việc học nó thực sự đã được đền đáp!

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

Tất nhiên, thay đổi là một hằng số trong lập trình, nó không bao giờ là một ý tưởng tốt để chỉ gắn bó với một ngôn ngữ và không học được gì mới. Với các dự án mới tại nơi làm việc, tôi thấy tôi phải phát triển các kỹ năng của mình và sử dụng các công cụ mới. Vì vậy, trong nhiều tháng qua, tôi bắt đầu học Python.

Hiện tại, tôi đã làm việc trong một dự án liên quan đến đào tạo và phát triển một mạng lưới thần kinh. Vì các thuật toán học tập này thường liên quan đến nhiều tính toán tương tự (và song song), hiệu suất là một mối quan tâm lớn.

Để tăng tốc mọi thứ, các loại tính toán đó được chuyển sang phía GPU (đơn vị xử lý đồ họa). TensorFlow là một khung/công cụ cho phép thực hiện một kiến ​​trúc như vậy; API của nó được viết bằng Python, vì vậy chúng tôi không sử dụng R cho dự án này.

Do nhu cầu của kiến ​​trúc cụ thể này, chúng tôi đã chọn làm việc trong dự án ở Python. Và tôi thực sự bắt đầu đánh giá cao quyết định này. Sức mạnh lớn nhất của Python, được cho là sự đơn giản của nó, thực tế là bạn có thể viết mã gọn gàng mà không cần nhiều nỗ lực. Nó là một ngôn ngữ với một đường cong học tập rất hào phóng.

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

R: Mã lộn xộn và khung dữ liệu

Tôi phải thừa nhận rằng tôi đã hơi bối rối khi lần đầu tiên bắt đầu học R. Tôi là một lập trình viên có kinh nghiệm, chắc chắn, nhưng đây là một ngôn ngữ hoàn toàn khác so với những gì tôi đã từng sử dụng.

Tôi nhớ một điều tôi gặp khó khăn trong việc hiểu là khái niệm về khung dữ liệu của người Viking, cũng như cách R là một ngôn ngữ lập trình hoàn toàn được vector hóa và chức năng.

Khả năng đọc cũng thực sự quan trọng trong lập trình, nhưng khi nói đến R, bạn cần lưu ý rằng bạn sẽ làm việc với một số mã lộn xộn ngay từ đầu. Nhưng đừng bao giờ sợ hãi khi bạn đã quen với ngôn ngữ, lập trình trong r thực tế trở thành bản chất thứ hai.

R được sử dụng bởi các giải pháp doanh nghiệp

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

Mặc dù R được sử dụng theo truyền thống trong môi trường học thuật, một số công ty đang cố gắng tạo các gói R tùy chỉnh với các giải pháp thương mại và hỗ trợ cho các công cụ đó. Oracle, Microsoft và IBM chỉ là một vài trong số nhiều công ty đang phát triển các gói R để sử dụng với các dịch vụ và cơ sở dữ liệu hiện có của họ. Vì vậy, nếu bạn học R, bạn sẽ mở ra những cơ hội việc làm mới và thú vị!

R có một số gói trực quan tuyệt vời để phân tích khám phá

Vậy sức mạnh của R, là gì? Vâng, R vượt trội khi phân tích khám phá và thống kê mô tả/suy luận. Nó có nhiều gói nguồn mở mà bạn có thể tải xuống từ dòng lệnh.

Hãy nhớ rằng R là một trong những ngôn ngữ học thuật hàng đầu của người Viking, vì vậy hầu hết các thuật toán và chức năng nguồn mở liên quan đến thống kê, khai thác dữ liệu và khoa học dữ liệu trước tiên sẽ được thực hiện trong R và sau đó trong các ngôn ngữ khác. Nếu bạn muốn sử dụng các thuật toán khoa học dữ liệu hoàn toàn mới, thì R là cách để đi.

Ngoài ra, R có một số gói trực quan hóa dữ liệu tuyệt vời, như GGPLOT2 và Plotly. Để tạo mẫu nhanh và trực quan tương tác, gói R Shiny là một lựa chọn tuyệt vời. Khi nói đến trực quan hóa dữ liệu, r lấy bánh.

Python: Mã gọn gàng và đơn giản

Là một ngôn ngữ cấp cao, Python có cú pháp rất đơn giản và dễ sử dụng. Sự khác biệt ngay lập tức là đáng chú ý, đặc biệt nếu bạn đến từ các ngôn ngữ cấp tương đối thấp như Java hoặc C ++.

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

Nguồn: https://image.slidesharecdn.com

Python có mục đích cao hơn nhiều

Như chúng tôi đã đề cập trước đó, R tập trung vào thống kê, phân tích dữ liệu và phân tích thăm dò. Vì vậy, việc sử dụng của nó được giới hạn trong các ngành này. Mặt khác, Python có mục đích cao hơn nhiều: như một ngôn ngữ đa năng, nó được sử dụng rộng rãi trong các ứng dụng, phát triển web và thậm chí phát triển trò chơi. Nói tóm lại, Python vượt ra ngoài khoa học dữ liệu.

Các công cụ được tạo để tích hợp

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

Còn việc tích hợp R và Python thì sao? Có thể cho hai ngôn ngữ này trong một dự án duy nhất? Câu trả lời là có, có các công cụ (như gói lông vũ) cho phép chúng tôi trao đổi dữ liệu giữa R và Python và tích hợp mã vào một dự án duy nhất.

Luôn luôn cạnh tranh

Khi nói đến phân tích dữ liệu và khoa học dữ liệu, hầu hết những điều bạn có thể làm trong R cũng có thể được thực hiện trong Python và ngược lại. Thông thường, các thuật toán khoa học dữ liệu mới được thực hiện bằng cả hai ngôn ngữ. Nhưng hiệu suất, cú pháp và triển khai có thể khác nhau giữa hai ngôn ngữ cho một số thuật toán nhất định.

Nó tùy thuộc vào bạn với ngôn ngữ bạn chọn cho con đường học tập của bạn. Thông thường, các nhà thống kê hoặc nhà phân tích dữ liệu bắt đầu với R và các nhà phát triển với Python. Trong mọi trường hợp, trước khi bạn bắt đầu học cái này hay cái khác, bạn nên xác định các mục tiêu bạn muốn đạt được và cách bạn thấy mình áp dụng các ngôn ngữ này trong cuộc sống hoặc trong công việc.

Nếu bạn muốn học R, bạn có thể kiểm tra một số khóa học tương tác được cung cấp bởi Vertabelo Academy:

  • Giới thiệu về R (R Basics, một khóa học tuyệt vời cho người mới bắt đầu)
  • Trực quan hóa dữ liệu 101 (Trực quan hóa dữ liệu trong R với GGPLOT2)

Và nếu bạn quan tâm đến việc học Python, hãy chắc chắn kiểm tra phần giới thiệu về khóa học khoa học dữ liệu (phân tích dữ liệu trong Python, không cần nền tảng CNTT).

R hay python?

Là một nhà khoa học dữ liệu, bạn sẽ cần chọn các công cụ phù hợp cho công việc. Và về mặt ngôn ngữ lập trình, nó thuộc về hai ứng cử viên của chúng tôi: R và Python.

Nói chung, bạn nên sử dụng R nếu bạn cần:

  • Sản xuất trực quan hóa dữ liệu tốt.
  • Tiến hành thống kê và phân tích suy luận, đặc biệt là trong môi trường học thuật.
  • Làm việc với phân tích khám phá.

Mặt khác, bạn nên sử dụng Python nếu bạn:

  • Cần làm việc với học tập sâu hoặc tính toán dựa vào GPU.
  • Muốn phát triển các ứng dụng máy tính để bàn, ứng dụng web hoặc trò chơi video.
  • Thích viết mã ngắn, sạch và dễ đọc.

Vào cuối ngày, cả hai ngôn ngữ này đều không phải là người giỏi hơn so với các ngôn ngữ khác có điểm mạnh và điểm yếu.

R và Python là hai ngôn ngữ khoa học dữ liệu phổ biến và mạnh mẽ nhất trên thị trường, vì vậy nếu bạn muốn theo đuổi sự nghiệp trong khoa học dữ liệu, bạn cần học ít nhất một trong số chúng. Và hãy nhớ rằng bắt đầu với một người, nhưng cuối cùng học cả hai. Bạn thực sự có thể đi sai với một trong hai ngôn ngữ!

Hướng dẫn can python do everything r can? - python có thể làm mọi thứ r có thể?

Bài đăng có thể thay thế R cho khoa học dữ liệu? xuất hiện đầu tiên trên blog của Vertabelo Academy.

Python có tốt hơn R không?

Nếu bạn đam mê tính toán thống kê và trực quan hóa dữ liệu của phân tích dữ liệu, r có thể phù hợp với bạn. Mặt khác, nếu bạn quan tâm đến việc trở thành một nhà khoa học dữ liệu và làm việc với dữ liệu lớn, trí tuệ nhân tạo và thuật toán học sâu, Python sẽ phù hợp hơn.If, on the other hand, you're interested in becoming a data scientist and working with big data, artificial intelligence, and deep learning algorithms, Python would be the better fit.

Có điều gì bạn có thể làm trong r nhưng không phải là Python?

R được xây dựng để thống kê: Phân tích thống kê nặng có thể với Python, nhưng bạn sẽ không nhận được các thư viện và chức năng dành riêng cho cú pháp như bạn làm với R. Ngôn ngữ làm cho việc xây dựng và truyền đạt kết quả trực quan hơn nhiều từ các loại cụ thể nàychương trình.you won't get the syntax-specific libraries and functions as you do with R. The language makes it much more intuitive to build and communicate results from these specific types of programs.

Python có linh hoạt hơn r không?

Mã Python linh hoạt và mạnh mẽ hơn mã r.Python không có nhiều tập hợp và phân tích, và các mô -đun học máy vài năm trước.. Python does not have many gathering and analysis, and machine learning modules a few years ago.

R hay Python có khó hơn không?

R có thể khó khăn cho người mới bắt đầu học do mã không được chuẩn hóa.Python thường dễ dàng hơn đối với hầu hết người học và có đường cong tuyến tính mượt mà hơn.Ngoài ra, Python yêu cầu ít thời gian mã hóa hơn vì nó dễ bảo trì hơn và có cú pháp tương tự như ngôn ngữ tiếng Anh.Python is usually easier for most learners and has a smoother linear curve. In addition, Python requires less coding time since it's easier to maintain and has a syntax similar to the English language.