Python 复制列时出现意外行为
我有一个数据帧(df),有几个列,其中一个是loan_status。该栏的分项数字如下:Python 复制列时出现意外行为,python,pandas,Python,Pandas,我有一个数据帧(df),有几个列,其中一个是loan_status。该栏的分项数字如下: Charged Off 38029 Current 520784 Default 199 Does not meet th
Charged Off 38029
Current 520784
Default 199
Does not meet the credit policy. Status:Charged Off 758
Does not meet the credit policy. Status:Current 15
Does not meet the credit policy. Status:Fully Paid 1947
Fully Paid 176203
In Grace Period 6486
Issued 142
Late (16-30 days) 2337
Late (31-120 days) 9949
我想制作一个新的专栏,将每个条目分类为信誉良好或信誉不佳的贷款,这样做。我做了以下工作:
df["badloan"] = df.loan_status
df.loc[(df.badloan == "Charged Off") |
(df.badloan == "Default") |
(df.badloan =="Does not meet the credit policy. Status:Charged Off"),
df.badloan] = "Bad"
这给了我以下错误:
ValueError:无法使用包含NA/NaN值的向量进行索引
这让我意识到数据中一定有一些nan值,出于好奇,我运行了:
df["badloan"] == df.loan_status
这导致大多数值为真,但有一些值为假。然后我尝试重新定义df.badloan,以防我意外修改它:
df["badloan"] = df.loan_status
df["badloan"] == df.loan_status
这仍然产生了一些错误的值。你知道为什么吗?你有没有检查过你的专栏中是否有N?尝试
np.isnan(df.loan\u status).any()
。nan==nan是假的,这可以解释这种行为。正是问题所在,没有意识到nan=楠。非常感谢。你能发布你的假值吗?所有的假值都是nan==nan的结果