Logo Zephyrnet

Cách lọc dữ liệu bằng Python

Ngày:

Cách lọc dữ liệu bằng Python
Photo by Sid Balachandran on Unsplash

Giới thiệu

 
Mặc dù các nhà khoa học dữ liệu có thể và đang sử dụng SQL, nhưng thay vào đó, việc thao túng khung dữ liệu gấu trúc của bạn bằng các thao tác Python sẽ dễ dàng hơn (hoặc, ngoài). Cá nhân tôi, muốn kết hợp cả hai ngôn ngữ để cấu trúc dữ liệu của mình. Tại một thời điểm nhất định, có thể hiệu quả hơn khi làm việc với các hoạt động khi bạn đã có một khung dữ liệu đã được truy vấn từ SQL. Ví dụ: bạn có thể truy vấn tất cả các cột cần thiết, sau đó đọc trong khung dữ liệu, sau đó áp dụng các thao tác tương ứng để tổ chức dữ liệu của bạn trước khi cuối cùng nó sẽ được nhập vào mô hình khoa học dữ liệu của bạn. Như đã nói, chúng ta hãy đi sâu hơn một chút vào một số thao tác đơn giản có thể giúp công việc hàng ngày của bạn dễ dàng hơn một chút.

Nhỏ hơn / Lớn hơn

 
Đối với tất cả các trường hợp sử dụng này, tôi sẽ có giả vờ khung dữ liệu gấu trúc.

Thao tác sau đây là "nhỏ hơn", vì vậy bạn có thể viết bí danh khung dữ liệu của mình, trong trường hợp này, chỉ là df. Bạn có thể chèn tên cột mà tôi đã đặt 'column_1'. Tôi đã chỉ định một khung dữ liệu mới, có tên là df_less_than_20, để tôi chỉ có các bản ghi / hàng là giá trị cột nhỏ hơn 20. 

df_less_than_20 = df [df ['column_1'] <20]

Khái niệm tương tự có thể được áp dụng cho lớn hơn:

df_more_than_20 = df [df ['column_1']> 20]

Mặc dù các thao tác này đơn giản nhưng chúng vẫn hữu ích và khi kết hợp lại với nhau, thậm chí có thể có lợi hơn - như chúng ta sẽ thấy bên dưới.

Một cách khác để xem tính năng này giống như mệnh đề WHERE trong SQL.

Và / Hoặc

 
Bây giờ chúng ta có câu lệnh trên, chúng ta có thể áp dụng một bộ lọc khác cho dữ liệu của mình.

Chúng ta có thể sử dụng cả hai, hoặc & hoặc | hoạt động. 

Làm rõ:

  • VÀ = &
  • HOẶC = |

Tôi đã biết về hoạt động AND, nhưng OR thực sự là một hoạt động gần đây mà tôi thấy nó cực kỳ hữu ích, đặc biệt là khi lọc ra dữ liệu để có độ chính xác và phân tích lỗi sau khi mô hình của bạn được chạy. Tất nhiên, bạn cũng có thể sử dụng thao tác này trước bước đó của quy trình.

Bây giờ, chúng ta có thể sử dụng một trong hai hoặc cả hai theo cách sau:

df [(df ['column_1']> = -100) & (df ['column_1'] <= 1000)]

Ở trên là nói, hãy cho tôi dữ liệu trong đó giá trị nằm trong khoảng từ âm 100 đến dương 100. 

Bước tiếp theo, là sử dụng phép toán HOẶC, để tìm tất cả các hàng âm:

df [(df ['column_1'] <0) | (df ​​['column_1']> = -100) & (df ['column_1'] <= 100)]

Chúng tôi cũng có thể loại bỏ mệnh đề giữa để tạo đoạn mã sau:

df [(df ['column_1'] <0) | (df ​​['column_1'] <= 100)]

Tuy nhiên, chúng ta cũng có thể thay thế một trong các mệnh đề bằng một thứ gì đó đang lọc trên một cột khác bằng một giá trị khác. 

df [(df ['column_1'] <0) | (df ​​['column_2'] <= 50)]

Không / Không bằng

 
Cuối cùng, chúng tôi có một cách khác để lọc dữ liệu của mình bằng cách chọn các hàng có một giá trị nhất định hoặc không có một giá trị nhất định. 

Hai thao tác này giống như sau

  • CÓ TƯƠNG ĐƯƠNG: ==
  • KHÔNG BẰNG NHAU:! =

Dưới đây là một vài ví dụ về cả hai:

df [df ['column_1'] == 100] df [df ['column_2'] == 50] df [df ['column_3'] == 'blue'] df [df ['column_3']! = 'blue '] df [(df [' column_3 ']! =' red ') | (df ​​['column_200'] <= 8.60)]

Tổng kết

 
Tóm lại, chúng tôi thấy rằng chúng tôi có thể kết hợp một số thao tác mà chúng tôi đã thảo luận ở trên để tạo tập dữ liệu được lọc hoặc khung dữ liệu gấu trúc. Cuối cùng, kiểu mã hóa này có thể dễ dàng hơn đối với một số nhà khoa học dữ liệu, những người thích làm việc bằng Python hơn là SQL.

Dưới đây là bản thân các hoạt động được tóm tắt:

  • Ít hơn / Lớn hơn: <>
  • Và / Hoặc: & |
  • Không / Không bằng: ==! =

Cảm ơn bạn đã đọc! Tôi hy vọng bạn thích bài viết này và thấy nó hữu ích.

dự án

 
[1] Ảnh của Sid Balachandran on Unsplash(2019)

 
 
Matthew Przybyla (Trung bình) là Nhà khoa học dữ liệu cao cấp tại Favor Delivery có trụ sở tại Texas. Ông có bằng Thạc sĩ về Khoa học Dữ liệu tại Đại học Southern Methodist. Anh ấy thích viết về các chủ đề thịnh hành và hướng dẫn trong không gian khoa học dữ liệu, từ các thuật toán mới đến lời khuyên về kinh nghiệm làm việc hàng ngày cho các nhà khoa học dữ liệu. Matt thích làm nổi bật khía cạnh kinh doanh của khoa học dữ liệu thay vì chỉ khía cạnh kỹ thuật. Vui lòng liên hệ với Matt trên LinkedIn.
 

tại chỗ_img

Tin tức mới nhất

tại chỗ_img