Hướng dẫn for loop in dataset python - vòng lặp for trong python tập dữ liệu
Ngày 16 tháng 7 năm 2019 Trong một hướng dẫn trước đây, chúng tôi đã đề cập đến những điều cơ bản của Python cho các vòng lặp, xem xét cách lặp lại thông qua danh sách và danh sách danh sách. Nhưng có rất nhiều điều để các vòng lặp hơn là lặp qua các danh sách và trong công việc khoa học dữ liệu trong thế giới thực, bạn có thể muốn sử dụng cho các vòng lặp với các cấu trúc dữ liệu khác, bao gồm các mảng numpy và các khung dữ liệu gấu trúc. Hướng dẫn này bắt đầu bằng cách sử dụng cho các vòng lặp để lặp lại thông qua các cấu trúc dữ liệu Python phổ biến khác ngoài danh sách (như bộ dữ liệu và từ điển). Sau đó, chúng tôi sẽ tìm hiểu sử dụng cho các vòng lặp song song với các thư viện khoa học dữ liệu Python phổ biến như Đánh giá nhanh: Python cho LoopA for Loop là một tuyên bố lập trình cho Python lặp lại một bộ sưu tập các đối tượng, thực hiện cùng một thao tác trên mỗi đối tượng theo trình tự. Cú pháp cơ bản là:
Mỗi lần Python lặp lại qua vòng lặp, biến 5 có giá trị của đối tượng tiếp theo trong chuỗi 6 của chúng tôi và Python sẽ thực thi mã chúng tôi đã viết trên mỗi đối tượng từ 6 theo trình tự.Bây giờ, hãy để Lặn đi vào cách sử dụng cho các vòng lặp với các loại cấu trúc dữ liệu khác nhau. Chúng tôi sẽ bỏ qua các danh sách vì chúng đã được đề cập trong hướng dẫn trước đó; Nếu bạn cần xem xét thêm, hãy xem bài học tương tác giới thiệu hoặc DataQuest trên danh sách và cho các vòng lặp. Cấu trúc dữ liệuBộ dữ liệuTuples là trình tự, giống như danh sách. Sự khác biệt giữa các bộ dữ liệu và danh sách là các bộ dữ liệu là bất biến; Đó là, chúng không thể thay đổi (tìm hiểu thêm về các đối tượng có thể thay đổi và bất biến trong Python). Tuples cũng sử dụng dấu ngoặc đơn thay vì dấu ngoặc vuông. Bất kể những khác biệt này, việc lặp qua các bộ dữ liệu rất giống với danh sách.
Nếu chúng ta có một danh sách các bộ dữ liệu, chúng ta có thể truy cập các phần tử riêng lẻ trong mỗi bộ thuật trong danh sách của chúng ta bằng cách đưa chúng vào cả hai biến trong vòng lặp FOR, như vậy:
Từ điểnNgoài danh sách và bộ dữ liệu, từ điển là một loại dữ liệu Python phổ biến khác mà bạn có thể gặp phải khi làm việc với dữ liệu và đối với các vòng lặp cũng có thể lặp qua từ điển. Từ điển Python bao gồm các cặp giá trị khóa, vì vậy trong mỗi vòng lặp, có hai yếu tố chúng ta cần truy cập (khóa và giá trị). Thay vì sử dụng 8 như chúng tôi sẽ làm với danh sách, để lặp qua cả các khóa và giá trị tương ứng cho từng cặp giá trị khóa mà chúng tôi cần gọi phương thức 9.Ví dụ, hãy tưởng tượng chúng ta có một từ điển gọi là 0 có chứa cả tích tắc cổ phiếu và giá cổ phiếu tương ứng. Chúng tôi sẽ sử dụng phương thức 9 trên từ điển của mình để tạo khóa và giá trị cho mỗi lần lặp:
Lưu ý rằng khóa tên và giá trị là hoàn toàn tùy ý; Chúng tôi cũng có thể dán nhãn chúng là K và V hoặc X và Y. DâyNhư đã đề cập trong hướng dẫn giới thiệu, cho các vòng lặp cũng có thể lặp qua từng ký tự trong một chuỗi. Như một đánh giá nhanh, ở đây, cách thức hoạt động của nó:
Mảng numpyBây giờ, hãy để Lừa xem cách sử dụng các vòng lặp với các gói khoa học dữ liệu Python phổ biến và các loại dữ liệu của chúng. Chúng tôi sẽ bắt đầu bằng cách xem xét cách sử dụng cho các vòng lặp với các mảng 1, vì vậy hãy để bắt đầu bằng cách tạo một số mảng các số ngẫu nhiên.
Lặp đi lặp lại trên một mảng numpy một chiều rất giống với việc lặp lại trong danh sách: 0 1Bây giờ, điều gì sẽ xảy ra nếu chúng ta muốn lặp lại thông qua một mảng hai chiều? Nếu chúng ta sử dụng cùng một cú pháp để lặp lại một mảng hai chiều như chúng ta đã làm ở trên, chúng ta chỉ có thể lặp lại toàn bộ các mảng trên mỗi lần lặp. 2 3Một mảng hai chiều được xây dựng từ một cặp mảng một chiều. Để truy cập mọi yếu tố thay vì mọi mảng, chúng ta có thể sử dụng hàm numpy 3, một đối tượng lặp đa chiều, lấy một mảng làm đối số của nó.Trong mã bên dưới, chúng tôi sẽ viết một vòng lặp cho lặp qua từng phần tử bằng cách vượt qua 4, mảng hai chiều của chúng tôi, làm đối số cho 3: 4 5Như chúng ta có thể thấy, điều này đầu tiên liệt kê tất cả các yếu tố trong X, sau đó tất cả các yếu tố của y. Nhớ lại! Khi lặp qua các cấu trúc dữ liệu khác nhau này, từ điển yêu cầu một phương thức, các mảng numpy yêu cầu một hàm.method, numpy arrays require a function. GANDAS DATAFRAMEKhi chúng tôi làm việc với dữ liệu trong Python, chúng tôi thường sử dụng các khung dữ liệu 2. Và may mắn thay, chúng ta cũng có thể sử dụng cho các vòng lặp để lặp lại thông qua chúng.Hãy để thực hành thực hiện việc này trong khi làm việc với một tệp CSV nhỏ ghi lại GDP, Capital City và dân số cho sáu quốc gia khác nhau. Chúng tôi sẽ đọc điều này vào một bản dữ liệu gấu trúc bên dưới. Pandas hoạt động hơi khác so với Numpy, vì vậy chúng tôi đã giành chiến thắng có thể đơn giản là lặp lại quá trình numpy mà chúng tôi đã học được. Nếu chúng ta cố gắng lặp lại một khung dữ liệu gấu trúc như chúng ta sẽ có một mảng numpy, điều này sẽ chỉ in ra tên cột: 6 7Thay vào đó, chúng ta cần đề cập rõ ràng rằng chúng ta muốn lặp lại trên các hàng của DataFrame. Chúng tôi thực hiện điều này bằng cách gọi phương thức 7 trên DataFrame và in nhãn hàng và dữ liệu hàng, trong đó một hàng là toàn bộ loạt gấu trúc. 8 9Chúng ta cũng có thể truy cập các giá trị cụ thể từ một loạt gấu trúc. Giả sử chúng ta chỉ muốn in ra thủ đô của mỗi quốc gia. Chúng tôi có thể chỉ định rằng chúng tôi chỉ muốn đầu ra từ cột Capital Capital như vậy: 0 1Để đưa mọi thứ đi xa hơn các bản in đơn giản, hãy để thêm một cột bằng cách sử dụng một vòng lặp. Hãy để thêm một cột GDP bình quân đầu người. Hãy nhớ rằng 8 là dựa trên nhãn. Trong mã bên dưới, chúng tôi sẽ thêm cột và tính toán nội dung của nó cho mỗi quốc gia bằng cách chia tổng GDP của nó từ dân số của nó và nhân kết quả với một nghìn tỷ (vì các số GDP được liệt kê thành hàng nghìn tỷ). 2 3Đối với mỗi hàng trong DataFrame của chúng tôi, chúng tôi đang tạo một nhãn mới và đặt dữ liệu hàng bằng tổng GDP chia cho dân số quốc gia và nhân với 1T đô la cho hàng ngàn đô la. Hàm stocks = { 'AAPL': 187.31, 'MSFT': 124.06, 'FB': 183.50 } for key, value in stocks.items() : print(key + " : " + str(value)) 4Chúng tôi đã thấy cách chúng tôi có thể sử dụng cho các vòng lặp để lặp lại bất kỳ trình tự hoặc cấu trúc dữ liệu nào. Nhưng điều gì sẽ xảy ra nếu chúng ta muốn lặp lại các chuỗi này theo một thứ tự cụ thể, hoặc trong một số lần cụ thể? Điều này có thể được thực hiện với chức năng 4 tích hợp của Python. Tùy thuộc vào số lượng đối số bạn chuyển đến hàm, bạn có thể quyết định chuỗi số đó sẽ bắt đầu và kết thúc cũng như sự khác biệt lớn như thế nào giữa một số và số tiếp theo. Lưu ý rằng, tương tự như danh sách, hàm 4 Số đếm bắt đầu từ 0 chứ không phải từ 1.Có ba cách chúng ta có thể gọi 4:
print("data science")
for c in "data science":
print(c)
|