我對Python很陌生。我正在嘗試為下面的數據集定義一個函數。示例數據我首先在 中查找最大值?;谶@個最大值,我正在檢查數據的最后8列中給定的哪一列具有最高的值。cell 3例如,根據給定的數據,中的最大值為 。現在,我正在檢查列中的哪些列具有與此最大值的最大值。對于此示例數據,答案應為單元格 10,值為 7201。因此,輸出應為單元格 10。cell 3 is 1470758cell 9cell 16這是我的代碼:def winner(filename): data=pd.read_csv(filename, sep=',') maxC=data.npop.max() while data.loc[data['npop']]==maxC: data3=data.iloc[:,-8:].max()#missing codewinner("demo.csv")請幫忙。我不明白我應該在缺少的代碼部分寫什么。
1 回答

一只甜甜圈
TA貢獻1836條經驗 獲得超5個贊
代碼的逐行解釋帶有注釋。
試試這個 :
def winner(filename):
df=pd.read_csv(filename, sep=',') # Read the csv into dataframe.
column_names = list(df.columns.values) # Get list of column names
max_col3_index = df['col3'].idmax() # this will return the index of max value in `col3` column.
row_data = df.loc[max_col3_index, column_names[-8:]] # get series of data present in last 8 columns at above index.
final_column_name = row_data.idxmax() # Get the name of column having max value in above series.
print(final_column_name)
添加回答
舉報
0/150
提交
取消