Filling nan values



我有一个包含nan值的数据集。这些值依赖于另一个变量,我正试图用它来清理数据。我写了一个代码来替换nan值,但它不起作用。代码为:

df.loc[(df["house"]=="rented") & (df["car"]=="yes")]["debt"].fillna(2, inplace=True)

https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.loc.html

返回列标签指定为的布尔序列的条件

df.loc[df['shield'] > 6, ['max_speed']]
max_speed
sidewinder          7

根据文件,应将其转换为:

df.loc['filter','selected column']

试试看:

df.loc[(df["house"]=="rented") & (df["car"]=="yes"), ["debt"]].fillna(2, inplace=True)

将df.loc切换到

for val in df.index:
if (df["house"][val] == "rented") and (df["car"][val] == "yes"):
df["debt"][val] = 2

如果我理解正确的话,你不想只填写na值。相反,只有当房子租了,你们有车的时候,你们才愿意填写na值。为了填充df索引"处的所有na值;债务;

df["debt"].fillna(2, inplace=True)

应该使用,而不是您的第二行代码。

最新更新