使用Python3.4,我有一个熊猫数据帧
import pandas as pd
df = pd.read_csv('file.csv')
df.head()
给予
animal fraction_decimal
0 cat1 '2/7'
1 cat2 '4/55'
2 cat3 '22/195'
3 cat4 '6/13'
....
我想计算列fraction_decimal
中的值,使之成为浮点值,即
animal fraction_decimal
0 cat1 0.2857142857142857
1 cat2 0.07272727272727272
2 cat3 0.11282051282051282
3 cat4 0.46153846153846156
....
然而,使用.apply(eval)
根本不起作用。你知道吗
我试过了
df['fraction_decimal'].apply(eval)
但这会产生:
0 2/7
1 4/55
2 22/195
3 6/13
....
Name: fraction_decimal, dtype: object
为什么这样不行?如何才能正常工作?你知道吗
字符串中有引号字符。你得把它们去掉。你知道吗
考虑:
然后:
相关问题 更多 >
编程相关推荐