Làm thế nào để bạn xáo trộn một tập dữ liệu trong python?

Cấu trúc dữ liệu có thể lập chỉ mục có thể là mảng, danh sách, khung dữ liệu hoặc ma trận thưa thớt scipy với thứ nguyên nhất quán

random_state int, thể hiện RandomState hoặc Không, mặc định=Không

Xác định việc tạo số ngẫu nhiên để xáo trộn dữ liệu. Truyền int cho kết quả có thể lặp lại qua nhiều lệnh gọi hàm. Xem Bảng thuật ngữ .

n_samples int, mặc định=Không

Số lượng mẫu cần tạo. Nếu để Không, điều này sẽ tự động được đặt thành thứ nguyên đầu tiên của mảng. Nó không được lớn hơn độ dài của mảng

Cách dễ nhất để làm điều đó là sử dụng df. phương thức sample[] trong gấu trúc để chọn tất cả các hàng mà không cần thay thế

df1 = df.sample[frac=1]

Cách 2 –

Bạn cũng có thể xáo trộn các hàng của khung dữ liệu bằng cách xáo trộn chỉ mục trước bằng cách sử dụng np. ngẫu nhiên. hoán vị và sau đó sử dụng chỉ mục được xáo trộn đó để chọn dữ liệu từ khung dữ liệu

Bằng cách sử dụng phương pháp


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
8, bạn có thể xáo trộn các hàng DataFrame một cách ngẫu nhiên, nếu bạn đang sử dụng mô-đun

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
9, bạn có thể sử dụng phương pháp

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
0 để thay đổi thứ tự của các hàng còn được gọi là xáo trộn. Python cũng có các gói khác như

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
1 có phương thức

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
2 để xáo trộn thứ tự các hàng trong DataFrame

1. Tạo DataFrame với Dictionary of Lists

Hãy tạo một Khung dữ liệu Pandas với một từ điển gồm các danh sách, các tên cột của Khung dữ liệu gấu trúc


# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
3,

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
4,

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
5,

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
6


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
0

Sản lượng dưới sản lượng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000

2. Pandas Xáo trộn hàng khung dữ liệu

Sử dụng phương pháp


# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
7 để xáo trộn thứ tự các hàng. Đối số từ khóa

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
8 chỉ định phần hàng sẽ trả về trong DataFrame mẫu ngẫu nhiên.

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
9 chỉ trả về 1 bản ghi ngẫu nhiên.

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
50 trả về ngẫu nhiên 50% số hàng

Lưu ý rằng phương thức sample[] theo mặc định trả về một DataFrame mới sau khi xáo trộn


# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]

Sản lượng dưới sản lượng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
5

Nếu bạn muốn nhận n hàng ngẫu nhiên, hãy sử dụng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
51

3. Pandas Xáo trộn hàng bằng cách đặt chỉ mục mới

Như bạn thấy ở trên, Chỉ mục cũng được xáo trộn cùng với các hàng. Nếu bạn muốn một Chỉ mục mới bắt đầu từ 0 bằng cách giữ nguyên Chỉ mục đã xáo trộn, hãy sử dụng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
52


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
0

Sản lượng dưới sản lượng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
1

Trong trường hợp nếu bạn không muốn Index bị xáo trộn thì hãy sử dụng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
53


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
3

4. sử dụng numpy. ngẫu nhiên. xáo trộn để thay đổi thứ tự hàng

Bạn có thể sử dụng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
54 để thay đổi thứ tự của các hàng DataFrame. Đảm bảo rằng bạn đã nhập

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
9 trước khi sử dụng phương pháp này


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
6

5. Sử dụng hoán vị [] Từ numpy để lấy mẫu ngẫu nhiên

Chúng tôi cũng có thể sử dụng phương pháp


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
56 để xáo trộn các hàng trong Khung dữ liệu của Pandas. Các chỉ số xáo trộn được sử dụng để chọn các hàng bằng phương pháp

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
57. Bạn có thể xáo trộn các hàng của DataFrame bằng cách lập chỉ mục với chỉ mục được xáo trộn. Ví dụ,

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
58


# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
0

Sản lượng dưới sản lượng


# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
1

6. Sử dụng sklearn shuffle[] để sắp xếp lại các hàng trong khung dữ liệu

Bạn cũng có thể sử dụng phương pháp


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
59 để xáo trộn các hàng DataFrame của gấu trúc. Để sử dụng

# shuffle the DataFrame rows & return all rows
df1 = df.sample[frac = 1]
print[df1]
1, bạn cần cài đặt nó bằng PIP [Trình cài đặt gói Python]. Ngoài ra, để sử dụng nó trong một chương trình, hãy đảm bảo rằng bạn đã nhập nó


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
0

7. Sử dụng Khung dữ liệu. áp dụng[] & numpy. ngẫu nhiên. hoán vị [] thành Xáo trộn

Bạn cũng có thể sử dụng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
01. Kết quả bên dưới đầu ra xáo trộn các hàng,

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
02


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
1

Sản lượng dưới sản lượng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
2

8. Pandas DataFrame Xáo trộn/Hoán vị hàng bằng chức năng Lambda

Sử dụng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
03 để lấy mẫu độc lập trên mỗi cột. Sử dụng apply để lặp qua từng cột và

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
04 để lấy mảng NumPy.

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
05 có nghĩa là tất cả các hàng của DataFrame


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
3

Sản lượng dưới sản lượng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
4

9. Xáo trộn khung dữ liệu ngẫu nhiên theo hàng và cột

Bạn có thể sử dụng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
06 để xáo trộn các hàng và cột một cách ngẫu nhiên. DataFrame mong muốn của bạn trông hoàn toàn ngẫu nhiên. Tôi thực sự không biết trường hợp sử dụng của cái này nhưng muốn giới thiệu nó vì điều này có thể thực hiện được với phương thức sample[]


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
5

Sản lượng dưới sản lượng


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
6

10. Ví dụ hoàn chỉnh cho các hàng khung dữ liệu xáo trộn


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
7

Sự kết luận

Trong bài viết này, bạn đã học cách xáo trộn các hàng trong Khung dữ liệu của Pandas bằng cách sử dụng các cách tiếp cận khác nhau như


   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
07,

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
08,

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
09, hàm lambda. Ngoài ra, bạn đã học cách xáo trộn các hàng trong Khung dữ liệu của Pandas bằng các phương pháp

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
56 và

   Courses    Fee Duration  Discount
0    Spark  20000    30day      1000
1  PySpark  25000   40days      2300
2   Hadoop  26000   35days      1500
3   Python  22000   40days      1200
4   pandas  24000   60days      2500
5   Oracle  21000   50days      2100
6     Java  22000   55days      2000
59

Chủ Đề