将数据类型“对象”转换为“浮点数”

时间:2019-10-18 20:37:24

标签: python pandas csv

最近几天我一直在使用CSV文件。我想要的是将数据转换为CSV浮点格式,以便将小数点后的最后几位取整。当我在熊猫数据帧上运行数据帧“ dtypes” 时,事实证明数据既不是浮点数也不是整数。数据类型为对象,如下图所示:

enter image description here

如您在屏幕快照中所见,几乎没有数字数据采用对象格式。所以我想知道,如何将对象类型转换为在python中浮动。

任何对此的信息将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:1)

其他人已经使用.astype()回答了注释中的问题……但这是一些解释它的代码。

作为专家提示,请提供入门代码来创建示例数据框,以使人们更轻松地为您提供帮助。

import pandas as pd

# step 1: create sample dataframe
df = pd.DataFrame({'strain': ['10.123456789', '10.23456789', '10.3456789'],
                   'temp': ['1.7', '1.8', '1.9'],
                   'weight': ['100.4', '100.5', '100.6'],
                  })

# step 2: examine dataframe and dtypes
print('Dataframe: ')
print(df.head())
print()
print('Dtypes: ')
print(df.dtypes)
print()

# step 3: convert the 'strain' column to float, round to 2 decimal places
df['strain_float'] = df['strain'].astype(float).round(2)

# step 4: examine dataframe and dtypes
print('Dataframe: ')
print(df.head())
print()
print('Dtypes: ')
print(df.dtypes)
print()
df

enter image description here