DataFrame 有一个从 0 到 19 的房间列表。您需要匹配它。
从DataFrame中移除所有room值\u003d 0的数据,并包含所有rooms>4的数据,替换为4。
尝试了几种方法:
data["rooms"] = data["rooms"].drop(np.where(data['rooms'] == 0)[0])
data["rooms"] = data[data["rooms"] >= 4 ].replace((data["rooms"] >= 4), 4)
第二:
rooms_data = data.drop(np.where(data['rooms'] == 0)[0])
def rooms_data_norma(row):
if row['rooms'] >= 4:
return row['rooms'] == 4
else:
return row['rooms']
结果,可以摆脱 0 值,但不可能用同一 DataFrame 中的必要值替换所有大于该值的值。
必需:只有行应该保留在最初没有 0 的 DataFrame 中,并且大于 4 的所有内容都应该替换为 4。
有没有更简单的方法可行?
读取输入:
解决方案:
结果: