【发布时间】:2015-10-30 04:36:26
【问题描述】:
很多问题都解决了这个问题,但似乎没有一个解决方案完全符合我的需要。
我有一个数据框,其中包含两列数字,每列 10-20 位数字。这些实际上是 ID #s,我想将它们连接起来。看起来最好首先将值转换为字符串。
但是,当用.astype(str) 转换时,pandas 会保留科学计数法,它不会飞。
我尝试过的事情:
试过:dtype arg ('str') 或转换器(使用str())在read_csv()
结果:df.dtypes 仍然列出“对象”,并且值仍然显示在 sci 中。符号
试过了:pd.set_option('display.float_format', lambda x: '%.0f' % x)
结果:在df.head() 中显示良好,但在使用 + 运算符强制转换为字符串和连接时恢复为科学计数法
尝试过:强制转换为 int、str 或 str(int(x))。
结果:当我用int() 强制一个值时,int 有效,但当我使用astype(int) 时无效。使用 .apply() 和 int() 会引发“invalid literal long() with base 10”错误。
这感觉应该很简单,急于弄清楚我错过了什么。
【问题讨论】: