我试图使这个字符串'[-0.8783137 0.05478287 -0.08827557 0.69203985 0.06209986]'浮动,但它给我一个错误。实际上,在我的dataframe中,这个列是对象类型的,每一行有768个值,我想让它为这些嵌入的值浮动类型。
我已经尝试过这些代码转换为浮点数,但无法解决它们。它正在给出这个错误。
import pandas as pd
df = pd.DataFrame({'encoded_values': ['[-0.8783137, 0.05478287, -0.08827557, 0.69203985, 0.06209986]',
'[0.31444644, -0.6546649, 0.7211526, 0.9819127, 0.74042267]']})
df['encoded_values']=df['encoded_values'].astype(float)
df['encoded_values'] = df['encoded_values'].str.replace(',', '').astype(float)
df['encoded_values'] = pd.to_numeric(df['encoded_values'], downcast='float')
1条答案
按热度按时间mrfwxfqh1#
字符串访问器是此类问题的完美解决方案。
输出:
| | 0|1|二|三|四|
| --------------|--------------|--------------|--------------|--------------|--------------|
| 0| -0.878314 |0.054783| -0.088276 |0.692040|0.062100|
| 1|0.314446| -0.654665 |0.721153|0.981913|0.740423|