Chúng ta có thể sử dụng nhóm trong python không?

Tương tự như mệnh đề SQL GROUP BY hàm pandas


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
8 dùng để gom dữ liệu giống nhau thành các nhóm và thực hiện các hàm tổng hợp trên dữ liệu đã nhóm. Nhóm theo hoạt động liên quan đến việc chia tách dữ liệu, áp dụng một số chức năng và cuối cùng là tổng hợp kết quả

Trong pandas, bạn có thể sử dụng


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
9 với sự kết hợp của

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
0,

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
1,

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
2, tổng hợp() và nhiều phương thức khác. Trong bài viết này, tôi sẽ trình bày cách nhóm theo một cột hoặc nhiều cột bằng cách sử dụng tập hợp với các ví dụ

1. Pandas groupby() Cú pháp

Dưới đây là cú pháp của hàm


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
9, hàm này nhận một số tham số được giải thích bên dưới và trả về đối tượng

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
4 chứa thông tin về các nhóm


# Syntax of DataFrame.groupby()
DataFrame.groupby(by=None, axis=0, level=None, as_index=True, 
       sort=True, group_keys=True, squeeze=<no_default>, 
       observed=False, dropna=True)
  • 
       Courses    Fee Duration  Discount
    0    Spark  22000   30days    1000.0
    1  PySpark  25000   50days    2300.0
    2   Hadoop  23000   55days    1000.0
    3   Python  24000   40days    1200.0
    4   Pandas  26000   60days    2500.0
    5   Hadoop  25000   35days       NaN
    6    Spark  25000   30days    1400.0
    7   Python  22000   50days    1600.0
    8       NA   1500   40days       0.0
    
    5 – Danh sách tên cột để nhóm theo
  • 
       Courses    Fee Duration  Discount
    0    Spark  22000   30days    1000.0
    1  PySpark  25000   50days    2300.0
    2   Hadoop  23000   55days    1000.0
    3   Python  24000   40days    1200.0
    4   Pandas  26000   60days    2500.0
    5   Hadoop  25000   35days       NaN
    6    Spark  25000   30days    1400.0
    7   Python  22000   50days    1600.0
    8       NA   1500   40days       0.0
    
    6 – Mặc định là 0. Phải mất 0 hoặc 'chỉ mục', 1 hoặc 'cột'
  • 
       Courses    Fee Duration  Discount
    0    Spark  22000   30days    1000.0
    1  PySpark  25000   50days    2300.0
    2   Hadoop  23000   55days    1000.0
    3   Python  24000   40days    1200.0
    4   Pandas  26000   60days    2500.0
    5   Hadoop  25000   35days       NaN
    6    Spark  25000   30days    1400.0
    7   Python  22000   50days    1600.0
    8       NA   1500   40days       0.0
    
    7 – Được sử dụng với MultiIndex
  • 
       Courses    Fee Duration  Discount
    0    Spark  22000   30days    1000.0
    1  PySpark  25000   50days    2300.0
    2   Hadoop  23000   55days    1000.0
    3   Python  24000   40days    1200.0
    4   Pandas  26000   60days    2500.0
    5   Hadoop  25000   35days       NaN
    6    Spark  25000   30days    1400.0
    7   Python  22000   50days    1600.0
    8       NA   1500   40days       0.0
    
    8 – đầu ra được nhóm theo kiểu sql
  • 
       Courses    Fee Duration  Discount
    0    Spark  22000   30days    1000.0
    1  PySpark  25000   50days    2300.0
    2   Hadoop  23000   55days    1000.0
    3   Python  24000   40days    1200.0
    4   Pandas  26000   60days    2500.0
    5   Hadoop  25000   35days       NaN
    6    Spark  25000   30days    1400.0
    7   Python  22000   50days    1600.0
    8       NA   1500   40days       0.0
    
    9 – Mặc định là True. Chỉ định có sắp xếp theo nhóm hay không
  • 
    import pandas as pd
    technologies   = ({
        'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
        'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
        'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
        'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
              })
    df = pd.DataFrame(technologies)
    print(df)
    
    30 – thêm khóa nhóm hay không
  • 
    import pandas as pd
    technologies   = ({
        'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
        'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
        'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
        'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
              })
    df = pd.DataFrame(technologies)
    print(df)
    
    31 – không dùng nữa trong các phiên bản mới
  • 
    import pandas as pd
    technologies   = ({
        'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
        'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
        'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
        'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
              })
    df = pd.DataFrame(technologies)
    print(df)
    
    32 – Điều này chỉ áp dụng nếu bất kỳ nhóm nào là Phân loại
  • 
    import pandas as pd
    technologies   = ({
        'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
        'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
        'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
        'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
              })
    df = pd.DataFrame(technologies)
    print(df)
    
    33 – Mặc định là Sai. Sử dụng True để bỏ Không/Nan trên các phím sory

Để giải thích một số ví dụ về cách thực hiện nhóm theo, trước tiên, hãy tạo một DataFrame đơn giản với sự kết hợp của các cột chuỗi và số


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)

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


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0

2. Pandas groupby() Ví dụ

Như tôi đã nói ở trên, hàm


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
9 trả về đối tượng

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
4 sau khi thu thập dữ liệu giống hệt nhau thành các nhóm từ DataFrame của gấu trúc. Đối tượng này chứa một số phương thức (

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
0,

import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
37 e. t. c) có thể được sử dụng để tổng hợp các hàng được nhóm


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
3

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


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
4

3. Pandas groupby() trên hai hoặc nhiều cột

Hầu hết thời gian chúng tôi cần thực hiện nhóm trên nhiều cột của DataFrame, bạn có thể thực hiện việc này bằng cách chuyển danh sách các nhãn cột mà bạn muốn thực hiện nhóm theo trên


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
5

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


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
6

4. Thêm chỉ mục vào dữ liệu được nhóm

Theo mặc định, kết quả


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
9 không bao gồm Chỉ mục hàng, bạn có thể thêm chỉ mục bằng DataFrame. phương thức reset_index()


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
8

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


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
9

5. Bỏ NA /None/Nan (trên phím nhóm) khỏi Kết quả

Bạn cũng có thể chọn có bao gồm NA/None/Nan trong khóa nhóm hay không bằng cách đặt tham số


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
33. Theo mặc định, giá trị của

import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
33 được đặt thành

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
41. vì vậy để không bao gồm các giá trị Không/Nan trên các khóa nhóm được đặt tham số

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
42


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
4

6. Sắp xếp kết quả groupby() theo Khóa nhóm

Theo mặc định, hàm groupby() sắp xếp kết quả theo khóa nhóm do đó sẽ mất thêm thời gian, nếu bạn gặp vấn đề về hiệu suất và không muốn sắp xếp nhóm theo kết quả, bạn có thể tắt chức năng này bằng cách sử dụng thông số


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
43


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
0

Nếu bạn muốn sắp xếp thứ tự khóa giảm dần, hãy sử dụng bên dưới


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
1

Trong trường hợp bạn muốn sắp xếp theo một khóa khác, bạn có thể thực hiện bằng cách sử dụng DataFrame. áp dụng() chức năng


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
2

7. Áp dụng nhiều tập hợp hơn

Bạn cũng có thể tính toán nhiều tập hợp cùng một lúc trong pandas bằng cách chuyển danh sách các hàm agg tới


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
44


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
3

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


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
4

Ví dụ trên tính toán


   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
45 và

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
46 trên cột

   Courses    Fee Duration  Discount
0    Spark  22000   30days    1000.0
1  PySpark  25000   50days    2300.0
2   Hadoop  23000   55days    1000.0
3   Python  24000   40days    1200.0
4   Pandas  26000   60days    2500.0
5   Hadoop  25000   35days       NaN
6    Spark  25000   30days    1400.0
7   Python  22000   50days    1600.0
8       NA   1500   40days       0.0
47. Hãy mở rộng điều này để tính toán các tập hợp khác nhau trên các cột khác nhau

Lưu ý rằng việc áp dụng một số tập hợp cho một cột duy nhất trong pandas DataFrame sẽ dẫn đến MultiIndex


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
5

Sản lượng dưới sản lượng. Lưu ý rằng điều này tạo ra MultiIndex. Làm việc với các cột có nhiều chỉ mục không dễ dàng vì vậy tôi khuyên bạn nên làm phẳng bằng cách đổi tên các cột


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
6

8. Ví dụ hoàn chỉnh về groupby() trong DataFrame


import pandas as pd
technologies   = ({
    'Courses':["Spark","PySpark","Hadoop","Python","Pandas","Hadoop","Spark","Python","NA"],
    'Fee' :[22000,25000,23000,24000,26000,25000,25000,22000,1500],
    'Duration':['30days','50days','55days','40days','60days','35days','30days','50days','40days'],
    'Discount':[1000,2300,1000,1200,2500,None,1400,1600,0]
          })
df = pd.DataFrame(technologies)
print(df)
7

Sự kết luận

Trong bài viết này, tôi đã đề cập đến cú pháp groupby() của Pandas và một số ví dụ về cách thu thập dữ liệu giống hệt nhau thành các nhóm. Tôi hy vọng bạn đã học cách chạy nhóm theo một số cột, sắp xếp dữ liệu được nhóm, bỏ qua giá trị null và nhiều ví dụ khác

Chúng ta có thể nhóm theo 2 cột trong Python không?

Nhóm theo nhiều cột . You can do this by passing a list of column names to groupby instead of a single string value.

Tôi có thể nhóm một đối tượng trong gấu trúc không?

Pandas' groupby() cho phép chúng tôi chia dữ liệu thành các nhóm riêng biệt để thực hiện tính toán nhằm phân tích tốt hơn . Trong bài viết này, bạn sẽ tìm hiểu quy trình “nhóm theo” (tách-áp dụng-kết hợp) và cách sử dụng hàm groupby() của Pandas để nhóm dữ liệu và thực hiện các thao tác.

Phương thức groupby() hoạt động như thế nào trong gấu trúc?

Thao tác theo nhóm liên quan đến một số kết hợp tách đối tượng, áp dụng hàm và kết hợp các kết quả . Điều này có thể được sử dụng để nhóm một lượng lớn dữ liệu và tính toán các hoạt động trên các nhóm này. Được sử dụng để xác định các nhóm cho nhóm.

Tôi có thể sử dụng nhóm mà không có hàm tổng hợp Python không?

GROUP BY không có hàm tổng hợp Mặc dù hầu hết thời gian GROUP BY được sử dụng cùng với các hàm tổng hợp, nó vẫn có thể được sử dụng mà không có hàm tổng hợp .