当前位置: 首页 > 知识库问答 >
问题:

根据NaNs将列值替换为0或1[重复]

唐骏祥
2023-03-14
import pandas as pd
import numpy as np
mydata_csv = pd.read_csv('D:\Python\character-deaths.csv',sep = ',',encoding = 'utf-8')
mydata_csv
del mydata_csv['Book of Death']
del mydata_csv['Death Chapter']

if mydata_csv['Death Year'] == np.nan:
 mydata_csv['Death Year'] = 0
else:
 mydata_csv['Death Year'] = 1

共有1个答案

东云
2023-03-14

您有两个问题:

>

  • 对序列/数据帧的逻辑操作不会产生标量结果。它生成一个向量,如果不能理解这个向量。

    nan!=nan;您的if条件永远不会成立,即使列是nan

    In [9]: np.nan == np.nan
    Out[9]: False
    
    mydata_csv['Death Year'] = np.where(mydata_csv['Death Year'].isnull(), 0, 1)
    
    mydata_csv = mydata_csv.drop(['Book of Death', 'Death Chapter'], 1)
    

  •  类似资料:
    • 问题内容: 我下面有一个数组: 我想要的是基于阈值将此向量转换为二进制向量。以threshold = 0.5为例,大于0.5的元素将转换为1,否则转换为0。 输出向量应如下所示: 我怎样才能做到这一点? 问题答案: 布尔取暖 特殊情况: 如果您的数组值是介于0和1之间的浮动值并且您的阈值为0.5,则这是最佳解决方案。

    • 这里我使用jquery验证插件。在我的表单中有一个下拉选择和一个输入文本框。当我选择下拉值0,然后文本框应该接受大于0,否则必须通过错误。如果我选择下拉取值1或2,那么文本框应该是只接受0,不超过0,必须通过错误。这是我的要求。请帮帮忙。 参考:http://jsfidle.net/ssthil/vqnpy/11/

    • 我对蟒蛇和熊猫还不熟悉。我有3列在csv文件和数据类型的列是字符串。 例子 我用熊猫来读取csv文件。我想用左侧列单元格值替换NaN。在这里,我想用col2 1st值替换col3 1st值,这样输出就会像 请帮帮我。谢谢

    • 我有一个数据帧(df),看起来像这样: 现在,我的目标是,对于列中的每个,应将列中关联的-值替换为字符串。 到目前为止我做了什么 我偶然发现了,它替换了每个(这不是我要找的),缺少值和,这似乎是我想要的,但不起作用。此外,我尝试了这个: 缺少索引或某种迭代器来访问列中的等效值 我试过这个: 这显然不起作用。 我看了几个问题,但不能基于答案中的建议。布莱克的问题西蒙的问题szli的问题扬·威廉斯·图

    • 问题内容: 我在MySQL中的运算结果中得到了价值。 有没有办法将这些值转换为值0? 问题答案: 是的,使用。 COALESCE遍历您提供的值列表,并返回第一个非空值。