Trường hợp gấu trúc khi nào

Truong Hop Gau Truc Khi Nao



Khi một điều kiện được thỏa mãn hoặc được đáp ứng, một câu lệnh trường hợp trong ngôn ngữ gấu trúc sẽ cung cấp một kết quả đầu ra hoặc trả về một giá trị. Một câu lệnh trường hợp giúp bạn có thể so sánh giá trị của một biến với một phạm vi giá trị tiềm năng. Khi tập hợp các giá trị được tham chiếu hoặc truyền trong câu lệnh trường hợp, mỗi giá trị bên trong tập hợp được kiểm tra bởi các trường hợp hoặc điều kiện bên trong câu lệnh. Chúng ta cũng có thể sử dụng câu lệnh if-else để thực hiện thao tác tương tự. Nếu một điều kiện nào đó là đúng, câu lệnh if-else sẽ thực thi một đoạn tập lệnh. Câu lệnh if-else cho biết thực hiện điều này nếu điều kiện là đúng và thực hiện điều đó nếu điều kiện không đúng. Trong hướng dẫn này, chúng tôi sẽ thực hiện các thao tác khác nhau bằng cách sử dụng các câu lệnh trường hợp và câu lệnh if-else.

Làm thế nào để sử dụng Báo cáo trường hợp gấu trúc?

Các câu lệnh tình huống có thể được tạo theo một số cách. Hàm NumPy where (), sử dụng cú pháp cơ bản sau, là cách đơn giản nhất để tạo câu lệnh trường hợp trong Pandas DataFrame:

df [ 'tên cột dọc' ] = np.where ( tình trạng 1 , 'Value1',
np.where ( tình trạng hai , 'Value2',
np.where ( tình trạng 3 , 'Value3', 'value4' ) ) )







Câu lệnh trên sẽ kiểm tra từng điều kiện để tìm giá trị và nếu điều kiện được thỏa mãn, sẽ tạo ra kết quả đầu ra hoặc trả về giá trị so với điều kiện.



Ví dụ # 1: Tuyên bố trường hợp gấu trúc sử dụng hàm where ()

Trước tiên, chúng ta hãy tạo khung dữ liệu để chúng ta có thể sử dụng báo cáo trường hợp của mình. Để tạo khung dữ liệu, trước tiên chúng tôi sẽ nhập các mô-đun numpy và pandas để chúng tôi có thể sử dụng các chức năng của chúng. Pd.Dataframe () sẽ được sử dụng để tạo khung dữ liệu của chúng ta.







Chúng tôi đã tạo khung dữ liệu ‘df’. Một từ điển Python được chuyển vào bên trong hàm pd.DataFrame () như một đối số với các khóa và giá trị. Chúng ta sẽ sử dụng hàm print () để xem khung dữ liệu của chúng ta.



Trong khung dữ liệu 'df', chúng ta có hai cột 'tên' và 'dấu' với các giá trị ['Ron', 'Tim', 'Anna', 'Jack', 'Rob', 'Lucy'] và [4, 6 , 8, 6, 9,10] tương ứng. Giả sử tên đó là các cột lưu trữ tên của học sinh và cột ‘điểm’ lưu trữ điểm của một số bài kiểm tra gần đây. Bây giờ, chúng ta sẽ viết một câu lệnh trường hợp bổ sung một cột mới có tên là “nhận xét” có giá trị dựa trên các giá trị do chúng ta chỉ định, cho mỗi điều kiện.

Phương thức “numpy.where ()” cung cấp các chỉ số phần tử từ mảng, cột hoặc danh sách đầu vào thỏa mãn điều kiện đã chỉ định. Trong trường hợp switch ở trên, hàm np.where () kiểm tra từng phần tử trong các cột ‘mark’. Nếu giá trị bằng hoặc nhỏ hơn 5, nó sẽ trả về 'fail' dưới dạng đầu ra. Nếu giá trị nhỏ hơn hoặc bằng 7, nó sẽ trả về thỏa mãn và nếu giá trị nhỏ hơn hoặc bằng 9, nó sẽ trả về ‘tuyệt vời.’ Nếu không có giá trị nào, kết quả sẽ là tuyệt vời.

Như có thể nhận thấy, cột mới ‘nhận xét’ được tạo trong khung dữ liệu ‘df’ của chúng tôi, lưu trữ các giá trị được trả về bởi câu lệnh trường hợp ở trên.

Ví dụ # 2:

Hãy thử lại câu lệnh trường hợp trên với một khung dữ liệu khác. Giả sử chúng ta phải phân loại các cầu thủ dựa trên tổng số bàn thắng của họ trong giải bóng đá trước đó. Vì vậy, hãy tạo khung dữ liệu để lưu trữ hồ sơ cầu thủ bóng đá.

Chúng tôi đã chuyển một từ điển với các khóa ‘tên’ và ‘mục tiêu’ bên trong hàm pd.DataFrame () để tạo khung dữ liệu của chúng tôi. Để in khung dữ liệu của chúng tôi, chúng tôi sẽ sử dụng chức năng in.

Như có thể thấy trong khung dữ liệu trên, chúng ta có hai cột: “tên” và “mục tiêu”. Trong tên cột, chúng ta có tên của người chơi [‘John’, ‘Marty’, ‘Clay’, ‘Nick’, ‘Mike’, ‘Alex’, ‘Tom’, ‘Rocky’]. Trong ‘cột’ mục tiêu, chúng tôi có tổng số bàn thắng của mỗi cầu thủ trong giải đấu trước đó. Bây giờ chúng tôi sẽ sử dụng tuyên bố tình huống của chúng tôi để chấm điểm những cầu thủ này dựa trên những bàn thắng mà họ đã ghi được.

Trường hợp trên được tạo bằng cách sử dụng hàm where (). Bên trong trường hợp, hàm câu lệnh đang kiểm tra từng phần tử trong các cột 'đánh dấu' so với các điều kiện. Nếu giá trị trong cột ‘mục tiêu’ bằng hoặc nhỏ hơn 5, nó sẽ trả về ‘C’. Nếu giá trị trong cột ‘mục tiêu’ bằng hoặc nhỏ hơn 9, nó sẽ trả về ‘B’. Nó sẽ trả về giá trị ‘A’ nếu giá trị trong cột ‘mục tiêu’ bằng hoặc lớn hơn 10. Các giá trị được câu lệnh trả về sẽ được lưu trữ trong ‘xếp hạng’ cột mới. Hãy in 'df' để xem kết quả.

Cột mới 'xếp hạng' được tạo thành công bằng cách sử dụng tập lệnh trên.

Ví dụ # 3: Câu lệnh if-else Pandas Sử dụng hàm apply ()

Trục hàng hoặc cột của khung dữ liệu được sử dụng bởi phương thức apply () để triển khai một hàm. Chúng ta có thể tạo hàm được xác định của riêng mình và sử dụng nó trong khung dữ liệu của chúng ta ở gấu trúc. Nó sẽ bao gồm các điều kiện if-else. Trước tiên, hãy tạo khung dữ liệu của chúng tôi, sau đó chúng tôi sẽ tạo một hàm trong đó chúng tôi sẽ sử dụng câu lệnh if-else để tạo kết quả. Để tạo khung dữ liệu của chúng tôi, trước tiên chúng tôi sẽ nhập mô-đun của pandas, sau đó chúng tôi sẽ chuyển một từ điển vào bên trong phương thức pd.DataFrame ().

Có thể thấy, khung dữ liệu của chúng ta bao gồm hai cột ‘A’ lưu trữ các giá trị số [23, 35, 64, 74, 85] và ‘B’ với các giá trị [45, 34, 61, 89, 27]. Bây giờ chúng ta sẽ tạo một hàm sẽ xác định giá trị nào lớn hơn giữa cả hai cột trong mỗi hàng của khung dữ liệu của chúng ta.

Bạn có thể sử dụng hàm lambda trong Python “pandas. DataFrame.apply () ”để chạy một biểu thức. Trong Python, hàm lambda là một hàm ẩn danh nhỏ gọn chấp nhận bất kỳ số lượng đối số nào và thực thi một biểu thức. Trong tập lệnh ở trên, chúng tôi đã tạo một câu lệnh điều kiện sẽ so sánh giá trị của cả hai cột và lưu trữ kết quả trong cột ‘so sánh’ mới. Nếu giá trị của cột ‘A’ nhỏ hơn giá trị của cột ‘B’, nó sẽ trả về “B lớn hơn”. Nếu điều kiện không được thỏa mãn, nó sẽ trả về 'A lớn hơn'.

Ví dụ # 4:

Hãy thử một ví dụ khác bằng cách sử dụng câu lệnh if-else bên trong hàm apply () với một khung dữ liệu khác.

Giả sử khung dữ liệu của chúng ta đang lưu trữ hồ sơ của nhân viên của một công ty nào đó. Cột 'emp' lưu trữ tên của nhân viên ['Franky', 'Harry', 'Luke', 'Peter', 'Andrew'], trong khi cột 'lương' lưu trữ lương của từng nhân viên [1350, 1000, 900 , 1200, 980] trong khung dữ liệu 'df'. Bây giờ chúng ta sẽ tạo câu lệnh if-else bằng phương thức apply ().

Điều kiện trên sẽ kiểm tra từng giá trị trong cột 'lương' và cộng 200 vào lương của nhân viên có giá trị lương nhỏ hơn hoặc bằng 1000. Chúng tôi đã lưu trữ các giá trị trả về từ hàm apply () trong cột mới ' tăng'. Hãy xem kết quả từ tập lệnh trên.

Như bạn có thể thấy, hàm đã thêm thành công 200 vào các giá trị nhỏ hơn hoặc bằng 100. Các giá trị lớn hơn 1000 vẫn không thay đổi.

Sự kết luận:

Trong hướng dẫn này, chúng ta đã thấy rằng khi điều kiện được thỏa mãn, một câu lệnh kiểu này, được gọi là câu lệnh trường hợp, trả về một giá trị. Chúng tôi đã thấy cách bạn có thể tạo một câu lệnh tình huống để thực hiện một hoạt động hoặc tác vụ được yêu cầu. Trong hướng dẫn này, chúng tôi đã sử dụng hàm np.where () và hàm apply () để tạo các câu lệnh trường hợp. Chúng tôi đã triển khai một vài ví dụ để dạy bạn cách sử dụng câu lệnh trường hợp gấu trúc bằng cách sử dụng hàm where () và cách sử dụng hàm apply () để tạo câu lệnh trường hợp.