Hướng dẫn is python good for data cleaning? - python có tốt cho việc dọn dẹp dữ liệu không?

Nếu bạn định đầu tư vào việc làm sạch dữ liệu, hãy làm đúng - với Python.

Bây giờ, hãy để Lừa lấy câu nói đó và đi lại một vài bước. Làm sạch dữ liệu, còn gọi là làm sạch dữ liệu, là một phần không thể thiếu trong việc chuẩn bị dữ liệu.

Bạn yêu cầu chuẩn bị dữ liệu gì và những gì mà bạn yêu cầu. Chà, cảm ơn bạn, đó là những gì tôi đã nhận được. Chuẩn bị dữ liệu thích hợp là điều cần thiết, và nếu được thực hiện không đúng cách, xương sống tốn kém của các phân tích dữ liệu hiệu quả.

Phân tích dữ liệu, và phân tích văn bản, đã đi vào các trò chơi chéo của mọi doanh nghiệp quan tâm đến thành công liên tục trên các thị trường hiện đại. Theo nghĩa đen, khả năng phân tích và định lượng phản hồi của khách hàng, mô hình bán hàng và thông tin khách hàng khác đã trở thành đồng tiền của vương quốc cho các doanh nghiệp muốn tạo dựng tên tuổi cho mình.

Học hỏi từ quá trình hiện tại của bạn, biết khách hàng của bạn, cải thiện quy trình của bạn, vượt qua đối thủ là tên của trò chơi. & NBSP;

Hướng dẫn này sẽ giải thích những điều cơ bản về việc làm sạch dữ liệu là gì, sau đó nhảy vào những thứ thực sự. Ở hạ lưu, hướng dẫn này sẽ chuyển thành cách làm sạch dữ liệu bằng Python đưa bạn qua từng bước. & NBSP;

1. Làm sạch dữ liệu là gì?

Làm sạch dữ liệu là quá trình sửa chữa hoặc loại bỏ dữ liệu tham nhũng, không chính xác hoặc không cần thiết từ một tập dữ liệu trước khi phân tích dữ liệu.

Mở rộng theo định nghĩa cơ bản này, làm sạch dữ liệu, thường được nhóm lại với việc làm sạch dữ liệu, chà dữ liệu và chuẩn bị dữ liệu, phục vụ để biến dữ liệu lộn xộn, có khả năng có vấn đề của bạn thành dữ liệu sạch. Điều quan trọng là, dữ liệu sạch sẽ được định nghĩa là dữ liệu mà các công cụ phân tích dữ liệu mạnh mẽ mà bạn đã chi tiền thực sự có thể sử dụng.

Tại MonkeyLearn, chúng tôi muốn giải thích lý do tại sao làm sạch dữ liệu lại quan trọng với cách tiếp cận đơn giản: & nbsp;

  1. Chúng tôi giải thích nguyên tắc dữ liệu xấu 1-100 và & NBSP;1-100 Bad Data Principle, and 
  2. Chúng tôi bối cảnh hóa nguyên tắc với một vài trích dẫn lựa chọn.

Nguyên tắc dữ liệu xấu 1-100 & NBSP;

The cost of bad data quality over time is significantly higher the longer you wait to clean.

Mỗi đô la chi tiêu làm sạch dữ liệu xấu về mặt thống kê ngăn chặn khoảng 100 đô la chi phí giảm.

Đối với bất kỳ doanh nghiệp, ROI (lợi tức đầu tư) là rất quan trọng. Nếu bạn đầu tư vào một chiến dịch quảng cáo, bạn sẽ hy vọng sẽ thấy sự gia tăng doanh số.

Những gì chúng tôi hy vọng sẽ chứng minh với nguyên tắc dữ liệu xấu 1-100 không chỉ là việc làm sạch dữ liệu cung cấp ROI đáng kinh ngạc. Chúng tôi cũng muốn lái xe về nhà mà giá trị của nó lớn đến mức đầu tư vào phân tích dữ liệu và việc làm sạch dữ liệu cần thiết trước, thường là việc sử dụng tài nguyên so với các kỹ thuật tiếp thị bán hàng và quảng cáo trong quá khứ.

Là Giám đốc điều hành của chúng tôi, Raúl Garreta, đặt nó, & nbsp;

Nếu quy trình hạ nguồn của bạn nhận được rác làm dữ liệu đầu vào, chất lượng kết quả của bạn cũng sẽ rất tệ.

Chìa khóa cần lưu ý rằng cái nhìn sâu sắc của Raúl, bất kể sức mạnh của chương trình phân tích dữ liệu của bạn. Điều đó sẽ giống như đặt Diesel vào một chiếc Lamborghini.

Với dữ liệu xấu, nó đơn giản - rác trong, rác ra. & Nbsp;

Garbage in equals garbage out of powerful machine learning models.

Bây giờ, điểm của hướng dẫn này là thông báo cho bạn cách thực hiện tốt nhất việc làm sạch dữ liệu bằng Python. Đối với người không quen biết, Python là một trong những phổ biến nhất, nếu không phải là ngôn ngữ mã phổ biến nhất trên thế giới. & NBSP;

Hơn nữa, và thậm chí đáng kể hơn, phần lớn các bộ dữ liệu có thể và được lập trình bằng Python. Tầm quan trọng của Python, Numpy và Pandas, cả hai thư viện Python (có nghĩa là các công cụ được lập trình sẵn) là những công cụ được lựa chọn giữa các nhà khoa học dữ liệu khi nói đến làm sạch dữ liệu, chuẩn bị và phân tích khác.

Một người nào đó cần hơn nữa? Bất kể, hãy để Lừa vào trong việc làm sạch dữ liệu của chúng tôi với các thư viện này.

2. Làm sạch dữ liệu bằng Python

Sử dụng Pandas và Numpy, chúng tôi sẽ hướng dẫn bạn qua loạt các nhiệm vụ sau đây, được liệt kê dưới đây. Chúng tôi sẽ đưa ra một ý tưởng siêu ngắn gọn về nhiệm vụ, sau đó giải thích mã cần thiết bằng cách sử dụng đầu vào (những gì bạn nên nhập) và đầu ra (kết quả là những gì bạn nên thấy). Khi có liên quan, chúng tôi cũng sẽ có một số ghi chú và mẹo hữu ích để bạn làm rõ các bit khó khăn. & NBSP;INPUT (what you should enter) and OUTPUT (what you should see as a result). Where relevant, we’ll also have some helpful notes and tips for you to clarify tricky bits. 

Dưới đây là các nhiệm vụ làm sạch dữ liệu cơ bản mà chúng tôi sẽ giải quyết:

  1. Nhập thư viện
  2. Nhập bộ dữ liệu phản hồi của khách hàng
  3. Xác định vị trí dữ liệu bị thiếu
  4. Kiểm tra các bản sao
  5. Phát hiện Outliers & NBSP;
  6. Bình thường hóa vỏ & nbsp;

1. Nhập thư viện

Hãy để Lôi nhận được gấu trúc và numpy và chạy trên kịch bản Python của bạn.

INPUT:

import pandas as pd
import numpy as np

OUTPUT:

Trong trường hợp này, tập lệnh của bạn bây giờ sẽ có các thư viện được tải. Bạn sẽ thấy nếu điều này đúng bằng cách nhập dữ liệu vào bước tiếp theo của chúng tôi.

2. Nhập bộ dữ liệu phản hồi của khách hàng

Tiếp theo, chúng tôi yêu cầu các thư viện của chúng tôi đọc một bộ dữ liệu phản hồi. Hãy để xem những gì trông như thế nào.

INPUT:

data = pd.read_csv('feedback.csv')

OUTPUT:  

Như bạn có thể thấy Phản hồi trên mạng.csv, nên là bộ dữ liệu bạn muốn kiểm tra. Và, trong trường hợp này, khi chúng tôi đọc PD PD.READ_CSV, là chức năng trước, chúng tôi biết rằng chúng tôi đang sử dụng thư viện Pandas để đọc bộ dữ liệu của chúng tôi. & NBSP;

3. Xác định vị trí dữ liệu bị thiếu

Tiếp theo, chúng tôi sẽ sử dụng một bản hack Python bí mật được gọi là ‘ISNULL Chức năng để khám phá dữ liệu của chúng tôi. Trên thực tế, một chức năng phổ biến, 'isnull' giúp chúng tôi tìm thấy nơi trong bộ dữ liệu của chúng tôi có các giá trị bị thiếu. Đây là thông tin hữu ích vì đây là những gì chúng ta cần sửa trong khi làm sạch dữ liệu.

INPUT:

data.isnull()

OUTPUT:  

Kết quả đầu ra của chúng tôi là danh sách các giá trị boolean. & NBSP;boolean values

Có một số hiểu biết mà danh sách có thể cung cấp cho chúng tôi. Đầu tiên và quan trọng nhất là nơi dữ liệu bị thiếu - bất kỳ cách đọc nào đúng trong một cột cho biết thiếu dữ liệu trong danh mục cột đó cho tệp dữ liệu đó.

Vì vậy, ví dụ, DataPoint 1 bị thiếu dữ liệu trong phần Đánh giá và phần ID đánh giá của nó (cả hai đều được đánh dấu đúng). & NBSP;1 has missing data in its Review section and its Review ID section (both are marked true). 

Chúng tôi có thể mở rộng dữ liệu còn thiếu của từng tính năng bằng cách mã hóa:

INPUT:  

data.isnull().sum()

OUTPUT:

Từ đây, chúng tôi sử dụng mã để thực sự làm sạch dữ liệu. Điều này sôi sục đến hai tùy chọn cơ bản. 1) Thả dữ liệu hoặc, 2) đầu vào bị thiếu dữ liệu. Nếu bạn chọn:1) Drop the data or, 2) Input missing data. If you opt to:

1. Thả dữ liệu

Bạn sẽ phải đưa ra quyết định khác - liệu chỉ bỏ các giá trị bị thiếu và giữ dữ liệu trong tập hợp hay để loại bỏ tính năng (toàn bộ cột) Bán buôn .

Nếu bạn muốn bỏ các giá trị còn thiếu, bạn sẽ phải đi vào và đánh dấu chúng bị vô hiệu theo các tiêu chuẩn của Pandas hoặc Numby (xem phần bên dưới). Nhưng nếu bạn muốn thả toàn bộ cột, thì đây là mã: mã:

INPUT:  

remove = ['Review ID','Date']
data.drop(remove, inplace =True, axis =1)

OUTPUT:  

Bây giờ, hãy để kiểm tra tùy chọn khác của chúng tôi.

2. Nhập dữ liệu bị thiếu

Về mặt kỹ thuật, phương pháp được mô tả ở trên về việc điền vào các giá trị riêng lẻ với các tiêu chuẩn gấu trúc hoặc numby cũng là một hình thức nhập dữ liệu bị thiếu - chúng tôi gọi nó là thêm ‘không xem xét lại. Khi nói đến việc nhập dữ liệu bị thiếu, bạn có thể thêm ‘không xem xét lại bằng cách sử dụng mã bên dưới hoặc điền thủ công dữ liệu chính xác.

INPUT:

data['Review'] = data['Review'].fillna('No review')

OUTPUT:

Như bạn có thể thấy, bây giờ điểm dữ liệu 1 hiện đã được đánh dấu là ‘không xem xét lại - thành công!1 have now been marked as ‘No Review’ – success!

4. Kiểm tra các bản sao

Sao chép, như thiếu dữ liệu, gây ra vấn đề và làm tắc nghẽn phần mềm phân tích. Hãy để định vị và loại bỏ chúng.

Để định vị các bản sao, chúng tôi bắt đầu với:

INPUT:

data.duplicated()

OUTPUT:

Hay còn gọi là một danh sách các giá trị boolean trong đó một cách đọc ’đúng chỉ ra các giá trị trùng lặp.

Hãy để đi và đi trước và thoát khỏi bản sao đó (DataPoint 8).8).

INPUT:

data.drop_duplicates()

OUTPUT:  

Và ở đó chúng tôi có nó, bộ dữ liệu của chúng tôi với sự trùng lặp của chúng tôi bị xóa. Trở đi.

5. Phát hiện các ngoại lệ

Các ngoại lệ là các giá trị số nằm bên ngoài quy tắc thống kê. Cắt giảm điều đó từ khoa học không cần thiết - chúng là những điểm dữ liệu nằm ngoài phạm vi mà chúng có khả năng đọc sai. & NBSP;

Họ, giống như các bản sao, cần phải được loại bỏ. Trước tiên, hãy để đánh hơi một ngoại lệ trước, kéo bộ dữ liệu của chúng tôi.

INPUT:

data['Rating'].describe()

OUTPUT:

Hãy xem giá trị tối đa đó - không có giá trị nào khác thậm chí gần 100, với giá trị trung bình (trung bình) là 11. Bây giờ, giải pháp của bạn cho các ngoại lệ sẽ phụ thuộc vào kiến ​​thức của bạn về bộ dữ liệu của bạn. Trong trường hợp này, các nhà khoa học dữ liệu nhập kiến ​​thức biết rằng họ có nghĩa là đặt giá trị 1 không phải là 100. Vì vậy, chúng tôi có thể loại bỏ ngoại lệ một cách an toàn để khắc phục dữ liệu của chúng tôi.

INPUT:

data.loc[10,'Rating'] = 1

OUTPUT:  

Bây giờ bộ dữ liệu của chúng tôi có xếp hạng từ 1 đến 5, sẽ tiết kiệm sai lệch lớn nếu có Rogue 100 trong đó.

6. Bình thường hóa vỏ

Cuối cùng nhưng không kém phần quan trọng, chúng tôi sẽ chấm điểm I của chúng tôi và vượt qua T Tiên. Có nghĩa là chúng tôi sẽ chuẩn hóa (chữ thường) tất cả các tiêu đề đánh giá để không nhầm lẫn các thuật toán của chúng tôi và chúng tôi sẽ tận dụng tên khách hàng, để các thuật toán của chúng tôi biết rằng chúng là các biến (bạn sẽ thấy điều này trong hành động bên dưới).

Tại đây, cách làm cho mọi chữ thường tiêu đề đánh giá:

INPUT:

data = pd.read_csv('feedback.csv')
0

OUTPUT:

Trông rất tuyệt! Để đảm bảo các chương trình mạnh mẽ của chúng tôi, don don bị vấp ngã và phân loại tên khách hàng vì nó được viết hoa. Ở đây, cách thức đảm bảo viết hoa tên khách hàng:

INPUT:

data = pd.read_csv('feedback.csv')
1

OUTPUT:

Và bạn có nó - tập dữ liệu của chúng tôi với tất cả các fixin. Hoặc, đúng hơn, với tất cả các bản sửa lỗi: Chúng tôi đã sử dụng tốt các thư viện Python trực quan để xác định vị trí và loại bỏ dữ liệu xấu và chuẩn hóa phần còn lại. Bây giờ chúng tôi đã sẵn sàng để tận dụng tối đa nó với phần mềm phân tích dữ liệu máy học của chúng tôi. & NBSP;

Takeaways

Đi trước cạnh tranh khi phân tích dữ liệu không dễ dàng - có vẻ như có phần mềm mạnh mẽ hơn và các chức năng mới được phát triển và ra mắt mỗi ngày.

Nhưng phân tích dữ liệu của bạn chỉ tốt như làm sạch dữ liệu của bạn, mà chúng tôi đã đề cập ở đây và khả năng tương thích của nó với phần mềm phân tích của bạn. Với dữ liệu sạch và phần mềm phân tích mạnh mẽ (và dễ sử dụng), bạn có thể đứng đầu trò chơi bằng cách dựa vào một quy trình bạn kiểm soát và hiểu.

Phân tích văn bản của MonkeyLearn và phòng phân tích dữ liệu tất cả trong một là các cặp hoàn hảo cho dữ liệu sạch của bạn. Vì phần mềm của chúng tôi tập trung vào khả năng tương thích API để cả liên kết với phần mềm hiện tại của bạn và nhập mã mới của bạn, và cũng vì thư viện mã mở của chúng tôi, việc dễ sử dụng và kiểm soát quy trình của chúng tôi là không ai sánh kịp. & NBSP;

Xem cách MonkeyLearn làm việc cho chính mình.

Python có tốt cho việc làm sạch dữ liệu không?

Tầm quan trọng của Python, Numpy và Pandas, cả hai thư viện Python (có nghĩa là các công cụ được lập trình sẵn) là những công cụ được lựa chọn giữa các nhà khoa học dữ liệu khi nói đến làm sạch dữ liệu, chuẩn bị và phân tích khác.both Python libraries (meaning pre-programmed toolsets) are the tools of choice amongst data scientists when it comes to data cleaning, prep, and other analysis.

R hay Python có tốt hơn để làm sạch dữ liệu không?

Bởi vì R lưu trữ dữ liệu trong bộ nhớ, nó thường là chậm hơn của cả hai.Tuy nhiên, việc làm sạch dữ liệu thường liên quan đến các bộ dữ liệu rất lớn.Trong trường hợp một lượng lớn dữ liệu cần được đánh giá, Python thực sự gặp bất lợi vì thiếu hỗ trợ đa luồng.R stores data in memory, it is typically the slower of the two. However, data cleaning typically involves very large sets of data. In cases where large amounts of data need to be evaluated, Python is actually at a disadvantage because of the lack of multithreading support.

Ngôn ngữ nào là tốt nhất để làm sạch dữ liệu?

Sử dụng R và Python để làm sạch dữ liệu các ngôn ngữ kịch bản tốt hơn như Python và R có thể hỗ trợ làm sạch dữ liệu, cho phép các nhà khoa học dữ liệu thực hiện việc dọn dẹp số lượng lớn.R and Python to clean data better Scripting languages such as Python and R can assist with data cleanup, allowing data scientists to do bulk cleanup.

Bạn có thể tự động hóa việc làm sạch dữ liệu trong Python không?

AutoClean tự động hóa việc tiền xử lý và làm sạch cho dự án khoa học dữ liệu tiếp theo của bạn tại Python.Chúng ta hãy xem một ví dụ trực quan về cách AutoClean xử lý bộ dữ liệu mẫu bên dưới: Bộ dữ liệu mẫu.. Let's look at a visual example of how AutoClean processes the sample dataset below: Sample dataset.