Pandas thả hàng với NaN trong nhiều cột
Bạn nên cố gắng sử dụng hàm 9 với tham số 0 bằng với các cột mà bạn đang cố gắng thả vào. Đây là một ví dụ ngắn được lấy từ tài liệu của Pandas Show
Điều này mang lại cho bạn những điều sau đây Trong hướng dẫn này, bạn sẽ học cách sử dụng phương thức Pandas dropna() để loại bỏ các giá trị còn thiếu trong Khung dữ liệu Pandas. Làm việc với dữ liệu bị thiếu là một trong những kỹ năng cần thiết để làm sạch dữ liệu của bạn trước khi phân tích nó. Bởi vì việc làm sạch dữ liệu có thể chiếm tới 80% thời gian của nhà phân tích dữ liệu / nhà khoa học dữ liệu, nên có thể thực hiện công việc này một cách hiệu quả và hiệu quả là một kỹ năng quan trọng Đến cuối hướng dẫn này, bạn sẽ học được
Mục lục
Tìm hiểu Phương thức dropna() của PandasPhương pháp Pandas 2 là một phương pháp cần thiết cho nhà phân tích dữ liệu hoặc nhà khoa học dữ liệu ở mọi cấp độ. Bởi vì làm sạch dữ liệu là một bước tiền xử lý cần thiết, biết cách làm việc với dữ liệu bị thiếu sẽ giúp bạn trở thành một lập trình viên giỏi hơnTrước khi đi sâu vào cách sử dụng phương pháp này, hãy dành một phút để hiểu cách thức hoạt động của phương pháp Pandas 2. Chúng ta có thể làm điều này bằng cách xem các tham số và đối số mặc định mà phương thức cung cấp
Chúng ta có thể thấy rằng phương pháp Pandas 2 cung cấp năm tham số khác nhau. Tất cả các tham số này đều có đối số mặc định được cung cấp. Điều này có nghĩa là bạn chỉ cần gọi phương thức và nó sẽ thực thiTuy nhiên, hiểu tác dụng của các tham số khác nhau sẽ đảm bảo rằng bạn nhận được kết quả như mong đợi. Hãy chia nhỏ các tham số này xuống xa hơn một chút ArgumentDescriptionDefault ValueAccepted Valuesaxis=Xác định xem các hàng hoặc cột có bị xóa hay không nếu chúng chứa dữ liệu bị thiếu. 0{0, 1, ‘index’, ‘columns’}how=Xác định xem một cột hoặc hàng phải thiếu bất kỳ hoặc tất cả giá trị nào thì mới được xóa. ‘any’{‘any’, ‘all’}thresh=Cần có bao nhiêu giá trị không phải NA để loại bỏ một cột hoặc hàng. Noneintegerssubset=Các nhãn dọc theo trục khác cần xem xét khi kiểm tra các giá trị bị thiếu. Không có nhãn cột hoặc chuỗi nhãn tại chỗ=Có hoàn thành thao tác tại chỗ hay không. FalsebooleansHiểu về Pandas 2 tham số và đối số mặc địnhDựa trên các tham số này, chúng ta có thể thấy rằng phương pháp Pandas 2 cung cấp rất nhiều tính linh hoạt trong cách loại bỏ các bản ghi có giá trị bị thiếuBây giờ bạn đã hiểu rõ về những gì có thể xảy ra với phương pháp này, hãy đi sâu vào việc sử dụng phương pháp này để loại bỏ tất cả các hàng có dữ liệu bị thiếu Đang tải một Khung dữ liệu Pandas mẫuĐể làm theo hướng dẫn này, tôi đã cung cấp một Khung dữ liệu Pandas mẫu. Nếu bạn không sử dụng tập dữ liệu của riêng mình, vui lòng sao chép và dán mã bên dưới vào trình chỉnh sửa mã mà bạn chọn
Chúng ta có thể thấy rằng tập dữ liệu có năm cột khác nhau, một số cột chứa một số hoặc tất cả các giá trị bị thiếu. Trong phần sau, bạn sẽ tìm hiểu cách loại bỏ các hàng chứa dữ liệu bị thiếu Cách thả hàng với dữ liệu bị thiếu trong Pandas bằng cách sử dụng. dropna()Phương pháp Pandas 20 giúp dễ dàng loại bỏ tất cả các hàng có dữ liệu bị thiếu trong đó. Theo mặc định, Pandas 20 sẽ loại bỏ bất kỳ hàng nào có bất kỳ bản ghi nào bị thiếu trong đó. Điều này là do tham số 22 được đặt thành 23 và tham số 24 được đặt thành 25Hãy xem điều gì sẽ xảy ra khi chúng ta áp dụng phương thức 2 cho DataFrame của mình 2Vì mọi bản ghi trong Khung dữ liệu của chúng tôi đều chứa một giá trị bị thiếu nên tất cả các bản ghi trong Khung dữ liệu của chúng tôi đều bị xóa Chúng ta có thể sửa đổi hành vi của hàm để chỉ loại bỏ các bản ghi khi thiếu tất cả các giá trị bằng cách chuyển 27. Hãy xem nó trông như thế nào 1Bằng cách sửa đổi hành vi của phương thức, chúng tôi có thể hướng dẫn Pandas chỉ loại bỏ các bản ghi khi thiếu tất cả các giá trị Trong phần tiếp theo, bạn sẽ tìm hiểu cách hướng dẫn Pandas chỉ kiểm tra các bản ghi bị thiếu trong một số cột Cách sử dụng Pandas dropna() với một tập hợp con hoặc các cột cụ thểPandas giúp dễ dàng sử dụng phương pháp 2 để chỉ kiểm tra một tập hợp con các cột hoặc một cột cụ thể. Điều này có thể cực kỳ hữu ích khi một số cột quan trọng đối với phân tích của bạn hơn những cột khácĐể chỉ định cột nào cần kiểm tra, bạn có thể sử dụng tham số 29, tham số này nhận nhãn một cột hoặc danh sách các nhãn cộtHãy xem cách đầu tiên chúng ta có thể chỉ kiểm tra các giá trị bị thiếu trong một cột duy nhất, cột 10 5Trong khối mã ở trên, chúng tôi đã chuyển một chuỗi vào tham số 29. Bởi vì chúng tôi chỉ muốn kiểm tra các giá trị bị thiếu trong một cột, nên một chuỗi đã hoạt động. Trong trường hợp này, Pandas đã bỏ qua việc thiếu các giá trị trong các cột khácBây giờ, hãy xem cách chúng tôi có thể kiểm tra các giá trị bị thiếu trên nhiều cột. Để làm điều này, chúng ta sẽ cần chuyển một danh sách (hoặc chuỗi) các nhãn cột vào tham số 29. Hãy xem cách chúng ta có thể kiểm tra các cột 10 và 14 0Trong trường hợp này, chúng tôi có thể kiểm tra các bản ghi bị thiếu trong hai cột. Trong phần sau, bạn sẽ tìm hiểu cách loại bỏ các cột có dữ liệu bị thiếu trong Khung dữ liệu Pandas Cách xóa các cột có dữ liệu bị thiếu trong Pandas bằng cách sử dụng. dropna()Việc xóa các cột trong Khung dữ liệu Pandas hoạt động theo cách rất giống với việc xóa các bản ghi. Để làm điều này, chúng tôi chỉ cần đặt tham số 24 thành 16 hoặc 17. Mặc dù việc loại bỏ các cột dựa trên dữ liệu bị thiếu có lẽ là một bài tập ít phổ biến hơn, nhưng điều quan trọng là phải biết cách thực hiện việc nàyHãy xem điều gì sẽ xảy ra khi chúng ta chuyển 18 vào cuộc gọi phương thức 2 của chúng ta 6Bởi vì mỗi cột chứa một số dữ liệu bị thiếu, tất cả các cột đã bị loại bỏ. Tại thời điểm này, chỉ còn lại một DataFrame trống và các chỉ số Chúng tôi có thể sửa đổi hành vi để chỉ loại bỏ các cột có tất cả các giá trị bị thiếu bằng cách chuyển vào 50 8Bằng cách sửa đổi hành vi của phương thức, chúng tôi chỉ có thể xóa các cột có tất cả các bản ghi bị thiếu Trong nhiều trường hợp, bạn sẽ muốn loại bỏ các bản ghi hoặc cột dựa trên một số ngưỡng giá trị – đây là điều bạn sẽ tìm hiểu trong phần sau Cách đặt ngưỡng giá trị bị thiếu cho việc xóa bản ghi trong PandasBằng cách sử dụng tham số 51, bạn có thể đặt số lượng giá trị tối thiểu không được thiếu để bản ghi bị xóa. Điều này cho phép bạn chỉ định tối thiểu mỗi bản ghi phải có bao nhiêu điểm dữ liệu để nó được lưu trong tập dữ liệuVì phương thức 2 của Pandas sẽ loại bỏ các bản ghi theo mặc định, nên chúng ta chỉ cần áp dụng tham số 51 để chạy phương thức của mình. Hãy xem cách chúng tôi có thể chỉ định rằng chúng tôi muốn có ít nhất bốn điểm dữ liệu cho mỗi bản ghi 2Trong ví dụ trên, chỉ những bản ghi có ít nhất bốn giá trị không bị thiếu mới được lưu giữ. Trong phần sau, bạn sẽ tìm hiểu cách sử dụng tham số này để loại bỏ các cột có số lượng bản ghi bị thiếu nhất định Xoá cột với một số bản ghi bị thiếu nhất địnhTương tự như ví dụ trên, bạn có thể muốn loại bỏ toàn bộ cột nếu thiếu một số bản ghi đã đặt. Bởi vì chúng ta có thể sử dụng phương thức 2 để loại bỏ các cột, nên chúng ta có thể kết hợp phương thức này với tham số 51 để loại bỏ các cộtVì tham số 56 hoạt động bằng cách chỉ định số lượng bản ghi không được rỗng, nên chúng tôi cần chỉ định đó là giá trịHãy xem cách chúng tôi có thể loại bỏ các cột không có ít nhất 4 điểm dữ liệu không bị thiếu 6Tuy nhiên, trong nhiều trường hợp, bạn sẽ muốn loại bỏ các cột dựa trên tỷ lệ phần trăm của các giá trị bị thiếu. Chúng ta có thể làm điều này bằng cùng một phương thức, nhưng chỉ cần tính giá trị trong lệnh gọi phương thức của chúng ta Hãy xem cách chúng tôi có thể loại bỏ các cột có ít nhất 10% giá trị bị thiếu 0Trong ví dụ trên, chúng tôi tính toán tham số 51 trong chính cuộc gọi phương thức bằng cách tính toán số lượng bản ghi không bị thiếu tối thiểu. Vì tham số 51 xem xét có bao nhiêu bản ghi không bị thiếu nên chúng tôi nhân độ dài của Khung dữ liệu với 59Làm thế nào để loại bỏ các giá trị còn thiếu trong Pandas tại chỗTrong các ví dụ trên, chúng tôi đã loại bỏ các bản ghi hoặc cột bằng cách gán lại DataFrame cho chính nó. Tuy nhiên, nếu bạn muốn thả bản ghi hoặc cột tại chỗ, bạn có thể thực hiện việc này bằng cách đặt 00Bằng cách sửa đổi DataFrame tại chỗ, phương thức này không trả về bất kỳ thứ gì. Thay vào đó, nó tự sửa đổi DataFrame cơ bản Hãy xem cách chúng tôi có thể loại bỏ các hàng bị thiếu khi tất cả các bản ghi bị thiếu, tại chỗ 1Trong khối mã ở trên, chúng tôi đã loại bỏ các bản ghi tại chỗ. Điều này tránh việc phải gán lại DataFrame cho chính nó Các câu hỏi thường gặpPandas dropna làm gì? Phương pháp Pandas 2 được sử dụng để loại bỏ các bản ghi hoặc cột bị thiếu dữ liệu. Phương pháp này cho phép bạn linh hoạt về cách loại bỏ các bản ghiTại sao Pandas dropna không hoạt động? Phương pháp Pandas 2 có thể không hoạt động nếu DataFrame không được gán lại cho chính nó hoặc nếu phương pháp này không được thực hiện tại chỗ. Nếu bạn không giảm giá trị tại chỗ, bạn cần gán lại DataFrame cho chính nóLàm cách nào tôi có thể đặt lại chỉ mục DataFrame khi sử dụng Pandas dropna? Phương thức 2 không cung cấp tùy chọn đặt lại chỉ mục. Tuy nhiên, bạn có thể xâu chuỗi quá trình đặt lại bằng phương pháp 04. Ví dụ, bạn có thể viết. 05Phần kết luậnTrong bài đăng này, bạn đã học cách sử dụng phương pháp Pandas 2 để loại bỏ các bản ghi hoặc cột bị thiếu trong DataFrame. Lần đầu tiên bạn tìm hiểu về các tham số khác nhau có sẵn trong phương thức. Sau đó, bạn đã học cách sử dụng phương pháp để loại bỏ các bản ghi bị thiếu dữ liệu cũng như các cột bị thiếu dữ liệu. Sau đó, bạn đã học cách sử dụng phương pháp loại bỏ bản ghi dựa trên ngưỡng không thiếu giá trị và cách sửa đổi DataFrame tại chỗ |