我如何将(-0.143704570332567-1.2618680524722614j)转换为sklearn适合方法可以使用的东西?

问题描述 投票:-1回答:1

我必须将包含以下类型的值的列转换:(-0.143704570332567-1.2618680524722614j)转换为fit中的sklearn方法可以使用的值。

我收到此错误:

ValueError:无法将字符串转换为浮点型:'(-0.17904283086526662-1.001922346185251313)'

当我使用时:self.model.fit(self.X_train, self.y_train)

python pandas machine-learning scikit-learn logistic-regression
1个回答
0
投票

首先从字符串转换为复数,然后可以将列拆分为实部和虚部。应该适合两个变量,因为它们现在都是float类型。

df['re'] = df.complex.map(lambda x: complex(x).real)
df['imag'] = df.complex.map(lambda x: complex(x).imag)             
                                  complex        re      imag
0  -0.143704570332567-1.2618680524722614j -0.143705 -1.261868
© www.soinside.com 2019 - 2024. All rights reserved.