Tôi là người mới bắt đầu phân tích dữ liệu bằng Python và bị mắc kẹt sau:
Tôi muốn tìm giá trị tối đa từ các cột riêng lẻ (pandas.dataframe) bằng phương pháp phát sóng /vector hóa.
Ảnh chụp nhanh của khung dữ liệu của tôi như sau: Nhập mô tả hình ảnh tại đây
Hỏi ngày 30 tháng 10 năm 2017 lúc 0:19Oct 30, 2017 at 0:19
4
Bạn có thể sử dụng chức năng tích hợp pandas.dataframe tối đa và tối thiểu để tìm nó
thí dụ
df = pandas.DataFrame(randn(4,4)) df.max(axis=0) # will return max value of each column df.max(axis=0)['AAL'] # column AAL's max df.max(axis=1) # will return max value of each rowhoặc một cách khác chỉ cần tìm cột mà bạn muốn và gọi Max
df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min()Min là như nhau
Đã trả lời ngày 30 tháng 10 năm 2017 lúc 0:32Oct 30, 2017 at 0:32
陳耀融陳耀融
2662 Huy hiệu bạc5 Huy hiệu Đồng2 silver badges5 bronze badges
1
Bạn có thể sử dụng hàm aggregate để có được giá trị tối đa và tối đa trong một dòng mã.
Đối với toàn bộ bộ dữ liệu:
df.agg(['min', 'max'])
Đối với một cột cụ thể:
df['column_name'].agg(['min', 'max'])
Đã trả lời ngày 15 tháng 8 lúc 20:29Aug 15 at 20:29
ROYROYRoy
6021 Huy hiệu vàng4 Huy hiệu bạc14 Huy hiệu đồng1 gold badge4 silver badges14 bronze badges
Trong bài viết này, chúng tôi sẽ thảo luận về cách tìm giá trị tối đa và vị trí chỉ mục của nó trong các cột và hàng của DataFrame.
Tạo DataFrame để tìm các giá trị tối đa & vị trí của các cột hoặc hàng
Python3
import numpy as np
import pandas as pd
matrix df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0 df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 1df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 2df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 3df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 4df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 3df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 6df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 7
df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 8df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 9aggregate0df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 3aggregate2df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 7
Các
df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 8aggregate5df.agg(['min', 'max'])4df.agg(['min', 'max'])5df.agg(['min', 'max'])6df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 7
df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 8aggregate5df['column_name'].agg(['min', 'max'])0df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 3df['column_name'].agg(['min', 'max'])2df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 3df['column_name'].agg(['min', 'max'])4df['column_name'].agg(['min', 'max'])5
df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 8df['column_name'].agg(['min', 'max'])7
df['column_name'].agg(['min', 'max'])8df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0 import0df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0import225____25____54import55____10____522525import9numpy as np0
numpy as np1
Output:
Tìm các giá trị tối đa trong các cột và hàng trong gấu trúc
Phương thức pandas dataFrame.max () tìm thấy tối đa của các giá trị trong đối tượng và trả về nó. Nếu đầu vào là một chuỗi, phương thức sẽ trả về một vô hướng sẽ là tối đa của các giá trị trong chuỗi. Nếu đầu vào là DataFrame, thì phương thức sẽ trả về một chuỗi với tối đa các giá trị so với trục được chỉ định trong DataFrame. Trục chỉ mục là trục mặc định được thực hiện bằng phương pháp này.dataframe.max() method finds the maximum of the values in the object and returns it. If the input is a series, the method will return a scalar which will be the maximum of the values in the series. If the input is a Dataframe, then the method will return a series with a maximum of values over the specified axis in the Dataframe. The index axis is the default axis taken by this method.
Nhận các giá trị tối đa của mỗi cột trong Python
Để tìm giá trị tối đa của mỗi cột, hãy gọi phương thức tối đa () trên đối tượng DataFrame mà không cần lấy bất kỳ đối số nào. Trong đầu ra, chúng ta có thể thấy rằng nó đã trả về một loạt các giá trị tối đa trong đó chỉ mục là tên cột và giá trị là cực đại từ mỗi cột.
Python3
numpy as np2df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0 numpy as np4numpy as np5numpy as np6
numpy as np7numpy as np8
Output:
Nhận giá trị tối đa từ một hàng của DataFrame trong Python
Đối với giá trị tối đa của mỗi hàng, hãy gọi phương thức tối đa () trên đối tượng DataFrame với trục đối số = 1. & nbsp; Trong đầu ra, chúng ta có thể thấy rằng nó đã trả về một loạt các giá trị tối đa trong đó chỉ mục là tên hàng và Các giá trị là cực đại từ mỗi hàng. & NBSP;
Python3
numpy as np2df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0 numpy as np4numpy as np5import3df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0__755545
numpy as np7numpy as np8
Output:
Nhận các giá trị tối đa của mỗi cột mà không bỏ qua NAN trong Python
Từ các ví dụ trên, các giá trị NAN được bỏ qua trong khi tìm các giá trị tối đa trên bất kỳ trục nào. Bằng cách đặt Skipna = Sai, chúng ta cũng có thể bao gồm các giá trị NAN. Nếu bất kỳ giá trị NAN nào tồn tại, nó sẽ được coi là giá trị tối đa.
Python3
numpy as np2df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0 numpy as np4numpy as np5pandas as pd3df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0pandas as pd55____45
numpy as np7numpy as np8
Output:
Nhận các giá trị tối đa từ nhiều cột trong Python
Để có được giá trị tối đa của một cột, hãy xem ví dụ sau & nbsp;
Python3
‘
numpy as np7aggregate5matrix 8df['column_name'].agg(['min', 'max'])5
numpy as np7df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 01
Output:
Nhận giá trị tối đa trong một hoặc nhiều cột
Một danh sách các cột cũng có thể được truyền thay vì một cột duy nhất để tìm các giá trị tối đa của các cột được chỉ định & nbsp;
Python3
numpy as np2df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0 df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 04matrix 2df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 3df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 07____108numpy as np5numpy as np6
numpy as np7aggregate5df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 13df['column_name'].agg(['min', 'max'])5
numpy as np7numpy as np8
Output:
Tìm vị trí tối đa trong các cột và hàng trong gấu trúc
Phương thức pandas dataFrame.idxmax () trả về chỉ số của lần xuất hiện đầu tiên của tối đa so với trục được yêu cầu. Trong khi tìm chỉ số của giá trị tối đa trên bất kỳ chỉ mục nào, tất cả các giá trị Na/null đều được loại trừ. & NBSP;dataframe.idxmax() method returns the index of the first occurrence of maximum over the requested axis. While finding the index of the maximum value across any index, all NA/null values are excluded.
Tìm chỉ mục hàng có giá trị tối đa
Nó trả về một chuỗi chứa các tên cột là chỉ mục và hàng dưới dạng các nhãn chỉ mục trong đó giá trị tối đa tồn tại trong cột đó.
Python3
df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 17df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 0 df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 19
numpy as np7aggregate5df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 22df['column_name'].agg(['min', 'max'])5
numpy as np7df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 25
Đầu ra: & nbsp;
Tìm tên cột có giá trị tối đa
Nó trả về một chuỗi chứa các nhãn chỉ mục hàng dưới dạng tên chỉ mục và cột là các giá trị trong đó giá trị tối đa tồn tại trong hàng đó.
Python3
‘
numpy as np7aggregate5df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 34df['column_name'].agg(['min', 'max'])5
numpy as np7df = pandas.DataFrame(randn(4,4)) df['AAL'].max() df['AAP'].min() 25
Output: