我想得到左值(LD)管道从DataFrame列"'CA距离标称(LD \ au)“中分离出来的值,这是代码。当我将字符串转换为NaN时,我得到了所有的值。
cneos = pd.read_csv('cneos.csv')
print(cneos['CA Distance Nominal (LD | au)'].head())
cneos['Distance']=pd.to_numeric(cneos['CA Distance Nominal (LD | au)'], errors='coerce')
print(cneos['Distance'].head())结果
0 2.02 | 0.00520
1 0.39 | 0.00100
2 8.98 | 0.02307
3 3.88 | 0.00996
4 4.84 | 0.01244
Name: CA Distance Nominal (LD | au), dtype: object在to_numeric()之后
0 NaN
1 NaN
2 NaN
3 NaN
4 NaN
Name: Distance, dtype: float64如何将LD值和AU值以浮点数分隔开?
发布于 2022-03-27 15:27:57
我不确定这是否是解决问题的最佳方法,但它有效:
separeted_data_frame = pd.DataFrame(cneos['CA Distance Nominal (LD | au)'].apply(lambda x: x.split('|')).to_list())
separeted_data_frame.columns = ['LD', 'AU']
separeted_data_frame.LD = separeted_data_frame.LD.astype(float)
separeted_data_frame.AU = separeted_data_frame.AU.astype(float)
cneos = cneos.join(separeted_data_frame).drop('CA Distance Nominal (LD | au)', 1)结果是:
LD AU
0 2.02 0.00520
1 0.39 0.00100
2 8.98 0.02307
3 3.88 0.00996
4 4.84 0.01244这是你想要的吗?
https://stackoverflow.com/questions/71637251
复制相似问题