2017-01-14 4 views
1

Образец файл CSV имеет содержание какread_csv импорт больших чисел

Afghanistan,AFG,8013233121.55065,8689883606.07776,8781610175.40574 

Когда я импортировать это с

GDP = pd.read_csv('world_bank.csv', header=4, usecols=fields) 

я получаю число в научной нотации.

Afghanistan,AFG,3.992331e+12,4.559041e+12 

Какой именно конвертор использовать?

+0

Это то же самое. Это не повлияет на ваши вычисления, только то, как они печатаются на консоли. –

ответ

3

Эти числа являются поплавками. Вы просто видите, что отображается.

Рассмотрим следующий

txt = """Afghanistan,AFG,8013233121.55065,8689883606.07776,8781610175.40574""" 

GDP = pd.read_csv(StringIO(txt), header=None, converters={i:np.float128 for i in [2,3,4]}) 

print(GDP) 

      0 1    2    3    4 
0 Afghanistan AFG 8.013233e+09 8.689884e+09 8.781610e+09 

Однако более пристальный взгляд на одну клетку

GDP.iloc[0, 2] 

8013233121.5506496 

Для print с форматом флоат вы, как вы можете. pd.set_option('display.float_format', '{:0.6f}'.format) или сделать это временно

with pd.option_context('display.float_format', '{:0.6f}'.format): 
    print(GDP) 

      0 1     2     3     4 
0 Afghanistan AFG 8013233121.550650 8689883606.077761 8781610175.405741 
+0

Полезно + 1, спасибо – ade1e