【问题标题】:Converting Object Data type to float data type in pandas results NaN values在熊猫中将对象数据类型转换为浮点数据类型会产生 NaN 值
【发布时间】:2020-02-20 02:28:05
【问题描述】:

我正在对 Ecoli 数据集进行分类作为作业 数据集是从 UCI 存储库中收集的。要创建决策树分类器,我需要将对象数据类型转换为浮点数。将数据类型转换为浮点数时,但列中的字符串全部更改为“NaN” 这样我就不能在 fit() 函数中使用该列

data_file = pd.read_csv('/home/root-user/Documents/ecoli.csv')
df1 = pd.DataFrame(data_file)
df1_cleaned = df1.drop('SEQUENCE_NAME',axis=1)
df1_cleaned['PROTEIN_SEQUENCE'] = pd.to_numeric(df1_cleaned['PROTEIN_SEQUENCE'], errors='coerce')
cleaned_list = df1_cleaned.values.tolist()
print(df1_cleaned) 

那么输出是这样的

data set after converting object dtype into float

【问题讨论】:

    标签: python pandas scikit-learn


    【解决方案1】:

    pd.to_numeric 尝试将序列转换为数字并在被告知这样做时强制执行。

    • errors = 'coerce' 会将任何可以转换为 float 的内容转换为 NaNs
    • 如果您想保留它无法转换为float 的任何内容 用于调试的原始形式,做errors = 'ignore'

    另外,能否请您在 PROTEIN_SEQUENCE 列中发布原始数据?也许,在转换之前清理一下会有所帮助。

    【讨论】:

      猜你喜欢
      • 2022-01-26
      • 2021-12-03
      • 1970-01-01
      • 1970-01-01
      • 2018-12-09
      • 2019-01-11
      • 1970-01-01
      • 2022-11-21
      • 1970-01-01
      相关资源
      最近更新 更多