【问题标题】:Pandas numerci column concider as string if NaN is inside如果 NaN 在里面,则 Pandas 数字列将视为字符串
【发布时间】:2022-11-27 18:25:11
【问题描述】:

我开始学习 Python,但我对 pandas 数据框有疑问。在 R 中,即使数字列具有 NaN 值,R 也设法在每一列中定义正确的数据类型。在熊猫中,情况似乎并非如此:

data = {
"calories": ["NA", 380, 390],
"duration": [50, 40, 45]
}

df = pd.DataFrame(data)
df.dtypes

如何设法自动检测每列中正确的数据类型?

提前致谢

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    “NA”是一个字符串,使用np.nanfloat('nan'),或pd.NA

    data = {
    "calories": [float('nan'), 380, 390],
    "duration": [50, 40, 45]
    }
    
    df = pd.DataFrame(data)
    print(df.dtypes)
    
    calories    float64
    duration      int64
    dtype: object
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-20
      • 2022-08-08
      • 1970-01-01
      • 2018-12-21
      • 1970-01-01
      • 2023-01-26
      • 2020-02-19
      • 2017-03-20
      相关资源
      最近更新 更多