Pandas tìm các hàng có NaN trong tất cả các cột

Phương thức isna[] trả về một DataFrame gồm các booleans trong đó True cho biết sự hiện diện của một giá trị bị thiếu

Sau đó, chúng tôi sử dụng any[axis=1] để có được một Series trong đó True đại diện cho sự hiện diện của ít nhất một True trong mỗi hàng

Tham số axis=1 là cần thiết ở đây vì hành vi mặc định của df0 là quét qua từng cột [trái ngược với từng hàng]

Với mặt nạ boolean này, sau đó chúng ta có thể trích xuất các hàng tương ứng với True bằng cú pháp df2

df[df.isna[].any[axis=1]]

Các hàng thiếu giá trị cho một cột nhất định

Chúng tôi hiển thị cùng một df ở đây để bạn tham khảo

df = pd.DataFrame[{"A":[np.nan,3,np.nan],"B":[4,5,6],"C":[np.nan,7,8]}, index=["a","b","c"]]

Giải pháp

Để nhận các hàng có giá trị bị thiếu trong cột df6

Giải trình

Trước tiên, chúng tôi bắt đầu bằng cách trích xuất cột df6 dưới dạng một Chuỗi

Tiếp theo, chúng tôi sử dụng phương pháp isna[] của Sê-ri để lấy Sê-ri các booleans trong đó True biểu thị sự hiện diện của

df[df.isna[].any[axis=1]]

0

Cuối cùng, chúng tôi chuyển vào mặt nạ boolean này để trích xuất các hàng tương ứng với True bằng cú pháp

df[df.isna[].any[axis=1]]

2

Các hàng thiếu giá trị cho nhiều cột

Chúng tôi hiển thị cùng một df ở đây để bạn tham khảo

df = pd.DataFrame[{"A":[np.nan,3,np.nan],"B":[4,5,6],"C":[np.nan,7,8]}, index=["a","b","c"]]

Giải pháp

Để nhận các hàng có giá trị bị thiếu trong các cột

df[df.isna[].any[axis=1]]

5 và df6

df[df.isna[].any[axis=1]]

7

Giải trình

Trước tiên, chúng tôi tìm nạp các cột

df[df.isna[].any[axis=1]]

5 và df6 dưới dạng Khung dữ liệu bằng cách sử dụng cú pháp

df[df.isna[].any[axis=1]]

2

Sau đó, chúng tôi sử dụng phương pháp isna[] để lấy DataFrame gồm các booleans trong đó True biểu thị sự hiện diện của

df[df.isna[].any[axis=1]]

0

Tiếp theo, chúng tôi sử dụng isna[]4 nhận một Chuỗi các booleans trong đó True biểu thị một hàng có tất cả các True

isna[]7

Cuối cùng, chúng tôi sử dụng cú pháp df2 để trích xuất các hàng tương ứng với True

df[df.isna[].any[axis=1]]

7

Các hàng thiếu giá trị cho tất cả các cột

Hãy xem xét DataFrame sau

True1

Giải pháp

Để nhận các hàng có giá trị bị thiếu cho tất cả các cột

True2

Giải trình

Logic hoàn toàn giống với trường hợp nhận các hàng có ít nhất một giá trị bị thiếu, ngoại trừ việc chúng tôi sử dụng True3 thay vì df0. Sự khác biệt như sau

  • True3 trả về một Chuỗi các booleans trong đó True chỉ ra một hàng có tất cả các giá trị cột bị thiếu True7

  • df0 trả về một Chuỗi các booleans trong đó True chỉ ra một hàng có ít nhất một giá trị cột bị thiếu

    Pandas là một công cụ đặc biệt cho phép chúng tôi thực hiện các thao tác dữ liệu phức tạp một cách hiệu quả và hiệu quả. Bên trong gấu trúc, chúng tôi chủ yếu xử lý tập dữ liệu ở dạng DataFrame. DataFrames là cấu trúc dữ liệu 2 chiều trong pandas. DataFrames bao gồm các hàng, cột và dữ liệu

    Chọn hàng có giá trị cột là null/None/nan

    Trong khi tạo DataFrame hoặc nhập tệp CSV, có thể có một số giá trị NaN trong các ô. Giá trị NaN có nghĩa là "Không phải là số", điều này thường có nghĩa là có một số giá trị bị thiếu trong ô

    Chúng tôi được cung cấp một Khung dữ liệu có nhiều cột, tất cả các cột này chứa một số giá trị số nguyên và một số giá trị null/nan

    Lặp lại hàng của khung dữ liệu, nếu bất kỳ cột nào chứa một số giá trị null/nan, chúng ta cần trả về hàng cụ thể đó. Với mục đích này, chúng tôi sẽ chỉ lọc khung dữ liệu với sự trợ giúp của dấu ngoặc vuông và phương thức isna[]

    Dấu ngoặc vuông sẽ trả về tất cả các hàng và bất cứ nơi nào điều kiện được thỏa mãn, nó sẽ trả về tất cả các cột

    Chúng ta có thể sử dụng cú pháp sau để chọn các hàng có giá trị NaN trong bất kỳ cột nào của DataFrame. ______0_______

    Lưu ý rằng mỗi hàng trong DataFrame kết quả chứa một giá trị NaN trong ít nhất một cột

    ví dụ 2. Chọn các hàng có giá trị NaN trong cột cụ thể

    Chúng ta có thể sử dụng cú pháp sau để chọn các hàng có giá trị NaN trong cột hỗ trợ của DataFrame

    #create new DataFrame that only contains rows with NaNs in assists column
    df_assists_nans = df.loc[df['assists'].isnull[]]
    #view results
    print[df_assists_nans]
    
      team  points  assists  rebounds
    4    E    14.0      NaN       6.0
    7    H    28.0      NaN       NaN   
    

    Lưu ý rằng mỗi hàng trong DataFrame kết quả chứa một giá trị NaN trong cột hỗ trợ

    Có một hàng có giá trị NaN trong cột điểm, nhưng hàng này không được chọn vì nó cũng không có giá trị NaN trong cột hỗ trợ

    Làm cách nào để tìm tất cả các cột có NaN trong gấu trúc?

    Bạn có thể sử dụng df. isnull[]. tổng[] . Nó hiển thị tất cả các cột và tổng số NaN của từng tính năng.

    Làm cách nào để lọc các hàng có giá trị NaN trong gấu trúc?

    Bạn có thể lọc ra các hàng có giá trị NAN từ chuỗi cột DataFrame của pandas, float, datetime e. t. c bằng cách sử dụng DataFrame. dropna[] và DataFrame. phương thức notnull[] . Python không hỗ trợ Null do đó mọi dữ liệu bị thiếu được biểu thị là Không có hoặc NaN.

    Làm cách nào để kiểm tra hàng nào có giá trị null trong pandas?

    Tìm các hàng có giá trị null trong Pandas Series [cột] . using the isna[] or isnull[] Series methods.

    Làm cách nào để tìm các giá trị còn thiếu trong mỗi pandas cột?

    Chúng ta có thể sử dụng hàm sum[] của Pandas để lấy số lượng giá trị bị thiếu trên mỗi cột trong khung dữ liệu. Theo mặc định, Pandas sum[] thêm vào các cột. Và chúng tôi nhận được một khung dữ liệu với số lượng giá trị bị thiếu cho mỗi cột. Khi bạn có khung dữ liệu lớn hơn, chúng ta có thể nhanh chóng tạo biểu đồ thanh bằng cách sử dụng biểu đồ của Pandas

Chủ Đề