首页 > 解决方案 > 将数据框中的字符串值拆分为 numpy 浮点值

问题描述

我有一个数据框,它的列具有浮动值,但采用字符串格式。如何将字符串值转换为浮点数并将它们存储在 numpy 数组中?

例如:

0   252485  '11.928911999999999 4.9965290000000016 0.0 0.0 ...'     '2.490541199999999 -6.533438 3.7505536 4.933191...' 1 0

这是我希望它看起来像的数据框的第一行

[[11.928911999999999 4.9965290000000016 0.0 0.0 ... 2.490541199999999 -6.533438 3.7505536 4.933191...]]

在此处输入图像描述

标签: pythonpandasnumpy

解决方案


让我知道这是否对您有用:

import pandas as pd
import numpy as np
df = pd.DataFrame([{'0': '5421736', '1': '12.9839834 1.29748374 4.8293'},
                   {'0': '13423',  '1': '19.43434 98.8934783674545 5.3456789'},
                   {'0': '39423',  '1': '9.423283434 0.563763648 123.17637364 34.8973493740'}])

df['new_1'] = df['1'].map(lambda x: [float(i) for i in x.split()])

#test the output:
df.iloc[0]['new_1']

推荐阅读