how to sort a pandas dataframe by two keys?

# 對於pandas資料框df如果須要依據主鍵文字欄位sentiment,

# 次鍵文字欄位text的長度進行紀錄排序,可參考如下寫法。 

def sort_by_two_columns(x): # x 表示某列資料的排序欄位值

    if x.name == 'sentiment': # 若詢問排序欄位為sentiment,回傳欄位值供排序
        return x
    elif x.name == 'text': # 若詢問排序欄位為text,回傳欄位長度值供排序
        return x.str.len()

# 先依據主鍵文字欄位sentiment由小到大,
# 再依據次鍵文字欄位text的長度由小到大,
# 排序結果重新回傳一個新資料框

sort_df = df.sort_values(by=['sentiment''text'], 
key=sort_by_two_columns, ascending=[TrueTrue], inplace=False)

pd.set_option('min_rows'100) # 資料框至少顯示100列

sorted_df = sort_df.drop_duplicates() # 去除重複記錄

沒有留言:

how to deal with metric scale inconsistency in topn recommendation evaluation

🎯 推薦系統一般會回傳前 N 個排名的物品清單給用戶,稱為 Top‑N 推薦。 遇到推薦模型須要訓練及評估時,習慣先蒐集用戶與物品的互動資料,再將資料拆分成沒有重疊的訓練集及測試集。 模型在訓練時只看得到訓練集,評估時則拿測試集作為驗證的標準答案,以免作...

總網頁瀏覽量