我是ML和數據科學的新手(最近從商業分析碩士畢業),現在在尋找數據科學/商業分析的職位時,我盡可能多地自己學習。我正在研究一個實踐數據集,目標是預測哪些客戶可能會錯過他們預定的約會。我的數據集中的一列是“鄰里”,其中包含 30 多個不同鄰域的名稱。我的數據集有 10,000 個觀測值,而一些鄰域名稱僅出現不到 50 次。我認為數據集中出現次數少于50次的鄰域太罕見了,機器學習模型無法正確分析。因此,我想從“鄰域”列中刪除鄰域的名稱,該列中出現的次數少于50次。幾個小時以來,我一直在嘗試為此編寫代碼,但很難做到正確。到目前為止,我已經得到了下面的版本:my_df = my_df.drop(my_df["Neighbourhood"].value_counts() < 50, axis = 0)我也嘗試過其他版本的代碼來刪除該分類列中的行,但我不斷收到類似的錯誤:KeyError: '[False False ... True True] not found in axis'我感謝您提前提供幫助,并感謝您與我分享您的知識和見解!
1 回答

繁華開滿天機
TA貢獻1816條經驗 獲得超4個贊
嘗試下面的代碼 - 它使用 .loc 運算符根據特定條件(即在具有高計數的鄰域中)選擇行
counts = my_df['Neighborhood'].value_counts()
new_df = my_df.loc[my_df['Neighborhood'].isin(counts.index[counts > 50])]
添加回答
舉報
0/150
提交
取消